Вход Регистрация
Файл: modules/diary/diary.php
Строк: 334
<?php

/* DCMS Special
 * Дата последнего редактирования 26.09.2016
 * Модифицировал densnet
 */

foreach (array('start''compress''sess''settings''db_connect''ipua''fnc''user') as $inc) {
    require_once 
"../../sys/inc/$inc.php";
}

if (isset(
$_GET['d'])) {
    
$name esc(urldecode($_GET['d']));
    if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `diary` WHERE `name`='$name' LIMIT 1"), 0) != 0) {
        
$diary mysql_fetch_assoc(mysql_query("SELECT * FROM `diary` WHERE `name`='$name' LIMIT 1"));
        
$us get_user($diary['id_user']);
        
$set['title'] = '' $diary['name'] . ' - ' lang('Блог') . ' ' $us['nick'] . ''// заголовок страницы

        
if ($diary['tags'] != NULL) {
            
$set['meta_keywords'] = '' $diary['tags'] . '';
        }
        
$set['meta_description'] = '' cut_text($diary['msg']) . '';

        require_once 
'sys/inc/thead.php';

        
aut();

        if (isset(
$_POST['save']) && isset($user)) {
            if (isset(
$_POST['msg']) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
                
$msg esc(stripcslashes(htmlspecialchars($_POST['msg'])));

                if (
utf8_strlen($msg) < 10) {
                    
$err[] = lang('Слишком короткое содержание');
                }
                if (
utf8_strlen($msg) > 10000) {
                    
$err[] = lang('Слишком длинное содержание');
                }

                
$mat antimat($msg);

                if (
$mat) {
                    
$err[] = lang('В содержании обнаружен мат') . ': ' $mat;
                }

                
$msg mysql_real_escape_string($msg);

                if (!isset(
$err)) {
                    
$diary['msg'] = esc(stripcslashes(htmlspecialchars($_POST['msg'])));

                    
mysql_query("UPDATE `diary` SET `msg`='$msg' WHERE `id`='$diary[id]' LIMIT 1");
                    
$_SESSION['message'] = lang('Изменения сохранены');

                    
header("Location: /modules/diary/$diary[name]/");
                    exit();
                }
            } elseif (isset(
$_POST['tags']) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
                
$tags esc(stripcslashes(htmlspecialchars($_POST['tags'])));

                if (
utf8_strlen($tags) < 2) {
                    
$err[] = lang('Слишком короткие теги');
                }
                if (
utf8_strlen($tags) > 256) {
                    
$err[] = lang('Слишком длинные теги');
                }

                
$mat antimat($tags);

                if (
$mat) {
                    
$err[] = lang('В тегах обнаружен мат') . ': ' $mat;
                }

                
$tags mysql_real_escape_string($tags);

                if (!isset(
$err)) {
                    
$diary['tags'] = $tags;
                    
mysql_query("UPDATE `diary` SET `tags`='$diary[tags]' WHERE `id`='$diary[id]' LIMIT 1");
                    
$_SESSION['message'] = lang('Изменения сохранены');

                    
header("Location: /modules/diary/$diary[name]/");
                    exit();
                }
            } elseif (isset(
$_POST['cat']) && $user['level'] > && ($user['id'] == $us['id'] || $user['level'] > $us['level'])) {
                if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `diary_cat` WHERE `id`='" intval($_POST['cat']) . "' LIMIT 1"), 0) != 0) {
                    
$diary['id_cat'] = intval($_POST['cat']);
                    
mysql_query("UPDATE `diary` SET `id_cat`='" intval($_POST['cat']) . "' WHERE `id`='$diary[id]' LIMIT 1");
                    
$_SESSION['message'] = lang('Изменения сохранены');

                    
header("Location: /modules/diary/$diary[name]/");
                    exit();
                } else {
                    
$err[] = lang('Ошибка категории');
                }
            } elseif (isset(
$_POST['name']) && $user['level'] > && ($user['id'] == $us['id'] || $user['level'] > $us['level'])) {
                
$name $_POST['name'];

                if (
utf8_strlen($name) < 3) {
                    
$err[] = lang('Слишком короткое название');
                }
                if (
utf8_strlen($name) > 100) {
                    
$err[] = lang('Слишком длинное название');
                }

                
$mat antimat($name);

                if (
$mat) {
                    
$err[] = lang('В названии обнаружен мат') . ': ' $mat;
                }
                
$name mysql_real_escape_string($name);

                if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `diary` WHERE `name`='$name' LIMIT 1"), 0) != 0) {
                    
$err[] = lang('Блог с таким названием уже существует');
                }

                if (!isset(
$err)) {
                    
$diary['name'] = $name;
                    
mysql_query("UPDATE `diary` SET `name`='$diary[name]' WHERE `id`='$diary[id]' LIMIT 1");
                    
$_SESSION['message'] = lang('Изменения сохранены');

                    
header("Location: /modules/diary/$diary[name]/");
                    exit();
                }
            } elseif (isset(
$_POST['readers']) && ($_POST['readers'] == || $_POST['readers'] == || $_POST['readers'] == 2) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
                
$readers intval($_POST['readers']);
                
$diary['readers'] = $readers;
                
mysql_query("UPDATE `diary` SET `readers`='$diary[readers]' WHERE `id`='$diary[id]' LIMIT 1");
                
$_SESSION['message'] = lang('Изменения сохранены');

                
header("Location: /modules/diary/$diary[name]/");
                exit();
            }
        }

        if (isset(
$user) && $us['id'] != $user['id'] && ($user['level'] > $us['level'] || ($diary['readers'] == || $diary['readers'] == 1) || $diary['readers'] == && mysql_result(mysql_query("SELECT COUNT(*) FROM `friends` WHERE (`user` = '$user[id]' AND `friends` = '$us[id]') OR (`user` = '$us[id]' AND `friends` = '$user[id]')"), 0) != 0)) {
            if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `diary_rating` WHERE `id_diary` = '$diary[id]' AND `id_user`='$user[id]' LIMIT 1"), 0) == && isset($_GET['plus']) && ($_GET['plus'] == || $_GET['plus'] == || $_GET['plus'] == || $_GET['plus'] == || $_GET['plus'] == 5)) {
                
$plus intval($_GET['plus']);
                
mysql_query("INSERT INTO `diary_rating` (`id_diary`, `id_user`, `rating`) values ('$diary[id]', '$user[id]', '$plus')");
                
$diary['rating'] = intval(mysql_result(mysql_query("SELECT SUM(`rating`) FROM `diary_rating` WHERE `id_diary` = '$diary[id]'"), 0));
                
mysql_query("UPDATE `diary` SET `rating`='$diary[rating]' WHERE `id`='$diary[id]' LIMIT 1");
                
mysql_query("INSERT INTO `notification` (`id_user`, `id_kont`, `msg`, `time`) values('$user[id]', '$us[id]', '$SexOst отзыв +$plus к Блогу [url=/modules/diary/$diary[name]/]$diary[name][/url]', '$time')");
                
$_SESSION['message'] = lang('Голос засчитан. Спасибо');

                
header("Location: /modules/diary/$diary[name]/");
                exit();
            }
        }
        
$cat mysql_fetch_assoc(mysql_query("SELECT * FROM `diary_cat` WHERE `id`='$diary[id_cat]' LIMIT 1"));
        
err();

        
#Навигация
        
echo "<div class='list-group-item-null list-group-item-grey'><small>";
        echo 
"<a href='/' class='hint--right' data-hint='" lang('На главную') . "'><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
        echo 
"<a href='/modules/diary/'>" lang('Блоги') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
        echo 
"<a href='/modules/diary/?r=$cat[id]'>" cutStr($cat['name'], 30) . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
        echo 
cutStr($diary['name'], 30);
        echo 
"</small></div><br />";

        if (isset(
$user) && $user['level'] > && ($user['id'] == $us['id'] || $user['level'] > $us['level'])) {
            if (isset(
$_GET['delete'])) {
                echo 
'<div class="list-group-item-null list-group-item-info">';
                echo 
lang('Вы уверены, что хотите удалить Блог') . '?<br />';
                echo 
'<a class="btn btn-success btn-sm" href="/modules/diary/?r=' $diary['id_cat'] . '&del=' $diary['id'] . '">Да</a> <a class="btn btn-secondary btn-sm" href="/modules/diary/' $diary['name'] . '/" title="Нет, отменить удаление">Нет</a></div>';
            }
        }

        if (isset(
$_GET['edit']) && $_GET['edit'] == 'name' && isset($user) && $user['level'] > && ($user['id'] == $us['id'] || $user['level'] > $us['level'])) {
            echo 
"<form method='post' class='list-group-item-null list-group-item-grey' name='message' action='/modules/diary/$diary[name]/'>";
            echo 
lang('Название') . "<br />";
            echo 
"<input name='name' maxlength='100' required length='100' type='text' value='$diary[name]' class='form-control'>";
            echo 
"<br />";
            
$doc->Button('btn btn-success btn-sm''save''save''Сохранить');
            
$doc->Link('btn btn-secondary btn-sm'"/modules/diary/$diary[name]/"null'Отмена');
            echo 
"</form>";
        } else {
            echo 
"<div class='list-group-item-null list-group-item-grey'><span style='float: right;'>";
            if (isset(
$user) && $user['level'] > && ($user['id'] == $us['id'] || $user['level'] > $us['level'])) {
                echo 
"<a href='?edit=name' class='hint--left' data-hint='" lang('Редактировать название') . "'><i class='fa fa-edit fa-fw'></i></a>";
            }
            if (isset(
$user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
                echo 
"<a href='?delete' class='hint--left' data-hint='" lang('Удалить блог') . "'><i class='fa fa-trash-o fa-fw'></i></a>";
            }
            echo 
"</span>";
            echo 
"<i class='fa fa-book fa-fw'></i> " toOutput($diary['name']) . "<br />";
            echo 
"</div>";
        }

        if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `diary_images` WHERE `id_diary`='$diary[id]' AND `position`='up' LIMIT 1"), 0) > 0) {
            echo 
'<div class="list-group-item-null">';
            
$q mysql_query("SELECT * FROM `diary_images` WHERE `id_diary`='$diary[id]' AND `position`='up' ORDER BY `id` ASC");
            while (
$image mysql_fetch_assoc($q)) {
                echo 
'<a href="/modules/diary/images/' $image['id'] . '.' $image['ras'] . '" title="Скачать оригинал">';
                if (
IS_WEB) {
                    echo 
'<img src="/modules/diary/images/640/' $image['id'] . '.' $image['ras'] . '" style="width: 500px;" alt=""/></a> ';
                } else {
                    echo 
'<img src="/modules/diary/images/128/' $image['id'] . '.' $image['ras'] . '" alt=""/></a> ';
                }
            }
            echo
'</div>';
        }
        if (isset(
$_GET['edit']) && $_GET['edit'] == 'msg' && isset($user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
            echo 
"<form method='post' class='list-group-item-null' name='message' action='/modules/diary/$diary[name]/'>";
            echo 
lang('Содержание') . "<br />";
            echo 
"<textarea name='msg' maxlength='10024' required length='10024' class='form-control'>" toOutput($diary['msg']) . "</textarea>";

            echo 
'<br/>';
            
$doc->Button('btn btn-success btn-sm''save''save''Сохранить');
            
$doc->Link('btn btn-secondary btn-sm'"/modules/diary/$diary[name]/"null'Отмена');
            echo 
'</form>';
        } else {
            echo 
'<div class="list-group-item-null">';
            echo 
toOutput($diary['msg']) . ' ';
            if (isset(
$user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
                echo 
"<a href='?edit=msg' style='float: right;' class='hint--left' data-hint='" lang('Редактировать содержание') . "'><i class='fa fa-edit fa-fw'></i></a>";
            }
            echo 
'</div>';
        }

        if (
mysql_result(mysql_query("SELECT COUNT(*) FROM `diary_images` WHERE `id_diary`='$diary[id]' AND `position`='down' LIMIT 1"), 0) > 0) {
            echo 
'<div class="list-group-item-null">';
            
$q2 mysql_query("SELECT * FROM `diary_images` WHERE `id_diary`='$diary[id]' AND `position`='down' ORDER BY `id` ASC");
            while (
$image2 mysql_fetch_assoc($q2)) {
                echo 
'<a href="/modules/diary/images/' $image2['id'] . '.' $image2['ras'] . '" title="Скачать оригинал">';
                if (
IS_WEB) {
                    echo 
'<img src="/modules/diary/images/640/' $image2['id'] . '.' $image2['ras'] . '" style="width: 500px;" alt=""/></a> ';
                } else {
                    echo 
'<img src="/modules/diary/images/128/' $image2['id'] . '.' $image2['ras'] . '" alt=""/></a> ';
                }
            }
            echo 
'</div>';
        }

        echo 
"<div class='list-group-item-null list-group-item-grey'>";
        echo 
"<small style='color: grey;float: right;'>" date::times($diary['time']) . "</small>";
        echo 
user($us['id']);
        echo 
"<br />";

        if (isset(
$_GET['edit']) && $_GET['edit'] == 'cat' && isset($user) && $user['level'] > && ($user['id'] == $us['id'] || $user['level'] > $us['level'])) {
            echo 
"<form method='post' class='list-group-item-null list-group-item-grey' action='/modules/diary/$diary[name]/'>";
            echo 
"<select name='cat' class='form-control'>";
            
$c mysql_query("SELECT * FROM `diary_cat` ORDER BY `name` ASC");
            while (
$cats mysql_fetch_assoc($c)) {
                echo
'<option value="' $cats['id'] . '"' . ($diary['id_cat'] == $cats['id'] ? ' selected="selected"' null) . '>' $cats['name'] . '</option>';
            }
            echo 
'</select><br/>';

            
$doc->Button('btn btn-success btn-sm''save''save''Сохранить');
            
$doc->Link('btn btn-secondary btn-sm'"/modules/diary/$diary[name]/"null'Отмена');
            echo 
'</form>';
        } else {
            echo 
"<i class='fa fa-folder fa-fw'></i> " lang('Категория') . ": <a href='/modules/diary/index.php?r=$cat[id]'>$cat[name]</a> ";
            if (isset(
$user) && $user['level'] > && ($user['id'] == $us['id'] || $user['level'] > $us['level'])) {
                echo 
"<a href='?edit=cat' class='hint--top' data-hint='" lang('Редактировать категорию') . "'><i class='fa fa-edit fa-fw'></i></a>";
            }
        }
        echo 
'<br/>';

        if (isset(
$_GET['edit']) && $_GET['edit'] == 'tags' && isset($user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
            echo 
"<form method='post' class='list-group-item-null list-group-item-grey' name='message' action='/modules/diary/$diary[name]/'>";

            
$doc->Input('tags''Метки'128"$diary[tags]");
            echo 
"<br />";
            
$doc->Button('btn btn-success btn-sm''save''save''Сохранить');
            
$doc->Link('btn btn-secondary btn-sm'"/modules/diary/$diary[name]/"null'Отмена');
            echo 
'</form>';
        } else {
            echo 
"<i class='fa fa-tags fa-fw'></i> " lang('Метки') . ": ";
            if (
$diary['tags'] != NULL) {
                
$tagss explode(','$diary['tags']);
                for (
$i 0$i count($tagss); $i++) {
                    echo 
"<a href='/modules/diary/tags.php?tag=$tagss[$i]' class='hint--top' data-hint='Искать метку $tagss[$i]'>$tagss[$i]</a>, ";
                }
            } else {
                echo 
lang('нет меток');
            }
            if (isset(
$user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
                echo 
" <a href='?edit=tags' class='hint--top' data-hint='" lang('Редактировать метки') . "'><i class='fa fa-edit fa-fw'></i></a>";
            }
        }

        if (isset(
$user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
            echo 
"<br /><a href='/modules/diary/images.php?id=$diary[id]'><i class='fa fa-image fa-fw'></i> " lang('Управление изображениями') . "</a>";
        }
        echo 
'</div>';

        if (isset(
$user) && $us['id'] == $user['id'] || isset($user) && $user['level'] > $us['level'] || ($diary['readers'] == || $diary['readers'] == 1) || isset($user) && $diary['readers'] == && mysql_result(mysql_query("SELECT COUNT(*) FROM `frends` WHERE (`user` = '$user[id]' AND `frend` = '$us[id]') OR (`user` = '$us[id]' AND `frend` = '$user[id]')"), 0) != 0) {
            if (isset(
$user) && $user['id'] != $us['id'] || !isset($user)) {
                
mysql_query("UPDATE `diary` SET `viewings`='" . ($diary['viewings'] + 1) . "' WHERE `id`='$diary[id]' LIMIT 1");
            }

            if (isset(
$user) && $user['id'] != $us['id'] && mysql_result(mysql_query("SELECT COUNT(*) FROM `diary_rating` WHERE `id_diary` = '$diary[id]' AND `id_user`='$user[id]' LIMIT 1"), 0) == 0) {
                echo 
'<div class="list-group-item-null list-group-item-info"><center>';
                echo 
'<a href="/modules/diary/' $diary['name'] . '/?plus=1" class="btn btn-secondary btn-sm" title="Повысить рейтинг Блога на 1">+1</a> ';
                echo 
'<a href="/modules/diary/' $diary['name'] . '/?plus=2" class="btn btn-secondary btn-sm" title="Повысить рейтинг Блога на 2">+2</a> ';
                echo 
'<a href="/modules/diary/' $diary['name'] . '/?plus=3" class="btn btn-secondary btn-sm" title="Повысить рейтинг Блога на 3">+3</a> ';
                echo 
'<a href="/modules/diary/' $diary['name'] . '/?plus=4" class="btn btn-secondary btn-sm" title="Повысить рейтинг Блога на 4">+4</a> ';
                echo 
'<a href="/modules/diary/' $diary['name'] . '/?plus=5" class="btn btn-secondary btn-sm" title="Повысить рейтинг Блога на 5">+5</a>';
                echo 
'</center></div>';
            }
        } else {
            echo 
'<div class="list-group-item-null list-group-item-warning">';
            echo 
'<i class="fa fa-users fa-fw"> <b>' lang('Блог пользователя могут читать только друзья') . '</b>';
            echo 
'</div>';
        }

        echo 
'<div class="list-group-item-null">';
        echo 
"<i class='fa fa-eye fa-fw'></i> " lang('Просмотров') . ": $diary[viewings] | ";
        echo 
"<i class='fa fa-star fa-fw'></i> " lang('Рейтинг') . ": $diary[rating]<br />";

        if (isset(
$_GET['edit']) && $_GET['edit'] == 'readers' && isset($user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
            echo 
'<form method="post" class="list-group-item-null" action="/modules/diary/' $diary['name'] . '/">';
            echo 
'<select name="readers" class="form-control">';
            echo 
'<option value="0"' . ($diary['readers'] == ' selected="selected"' null) . '>' lang('Читают и комментируют все') . '</option>';
            echo 
'<option value="1"' . ($diary['readers'] == ' selected="selected"' null) . '>' lang('Читают все, комментируют друзья') . '</option>';
            echo 
'<option value="2"' . ($diary['readers'] == ' selected="selected"' null) . '>' lang('Читают и комментируют друзья') . '</option>';
            echo 
'</select><br/>';
            
$doc->Button('btn btn-success btn-sm''save''save''Сохранить');
            
$doc->Link('btn btn-secondary btn-sm'"/modules/diary/$diary[name]/"null'Отмена');
            echo 
'</form>';
        } else {
            echo 
lang('Читают') . ': ';
            if (
$diary['readers'] == || $diary['readers'] == 1) {
                echo 
'<b>' lang('Все') . '</b>';
            } else {
                echo 
'<b>' lang('Друзья') . '</b>';
            }
            echo
' | ';
            echo 
lang('Комментируют') . ': ';
            if (
$diary['readers'] == 0) {
                echo 
'<b>' lang('Все') . '</b>';
            } else {
                echo 
'<b>' lang('Друзья') . '</b>';
            }
            if (isset(
$user) && ($user['id'] == $us['id'] || $user['level'] > && $user['level'] > $us['level'])) {
                echo 
" <a href='?edit=readers' class='hint--top' data-hint='" lang('Редактировать приватность') . "'><i class='fa fa-edit fa-fw'></i></a>";
            }
            echo
'<br/>';
        }
        echo
'</div>';
        
$count_komm mysql_result(mysql_query("SELECT COUNT(*) FROM `diary_komm` WHERE `id_diary` = '$diary[id]'"), 0);

        echo 
"<a class='list-group-item-null list-group-item-grey' href='/modules/diary/komm.php?id=$diary[id]'><i class='fa fa-comments fa-fw'></i> " lang('Комментарии') . " <span class='label label-default'>$count_komm</span></a>";
    } else {
        
header("Location:index.php");
    }
} else {
    
header("Location:index.php");
}
require_once 
'sys/inc/tfoot.php';
Онлайн: 0
Реклама