View file modules/diary/search.php

File size: 4.36Kb
<?php

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

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

$set['title'] = lang('Блоги - Поиск');

require_once H . 'sys/inc/thead.php';

aut();
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 lang('Поиск');
echo "</small></div>";

$search = NULL;
if (isset($_SESSION['search'])) {
    $search = $_SESSION['search'];
}
if (isset($_POST['search'])) {
    $search = $_POST['search'];
}
$_SESSION['search'] = $search;

$search = preg_replace("#( ){2,}#", " ", $search);
$search = preg_replace("#^( ){1,}|( ){1,}$#", "", $search);

$where = 1;
if (isset($_SESSION['where'])) {
    $where = $_SESSION['where'];
}
if (isset($_POST['where']) && ($_POST['where'] == 1 || $_POST['where'] == 2)) {
    $where = intval($_POST['where']);
}
$_SESSION['where'] = $where;

if (isset($_GET['go']) && $search != NULL && $where != NULL) {
    $q_search = str_replace('%', '', $search);
    $q_search = str_replace(' ', '%', $q_search);
    if ($where == 1) {
        $where1 = 'name';
    } else {
        $where1 = 'msg';
    }

    $blog = $db->super_query("SELECT COUNT(*) as count FROM `diary` WHERE `$where1` like '%" . $db->safesql($q_search) . "%'");
    $k_page = k_page($blog['count'], $set['p_str']);
    $page = page($k_page);
    $start = $set['p_str'] * $page - $set['p_str'];
    if ($blog['count'] == 0) {
        echo "<br />";
        $doc->NoResult();
    } else {
        echo "<div class='list-group-item-null-mini'><div class='left_text'>" . lang('Найденные результаты') . "</div>";

        echo "<div class='hr'></div></div>";
    }
    $diary = $db->query("SELECT * FROM `diary` WHERE `$where1` like '%" . $db->safesql($q_search) . "%' ORDER BY `id` DESC LIMIT $start, $set[p_str]");

    while ($result = $diary->fetch_object()) {
        $razdel = $db->query("SELECT * FROM `diary_cat` WHERE `id` = '$result->id_cat' LIMIT 1");
        $razdel = $razdel->fetch_object();
        $ank = get_user($result->id_user);

        echo '<div class="list-group-item-null-mini list-group-item-grey dop">';
        echo "<a href='/modules/diary/$result->name/'><i class='fa fa-book fa-fw'></i> $result->name</a> <small class='right grey'>" . date::timek($result->time) . "</small><br />";

        if ($result->tags != null) {
            echo '<small class="grey"><i class="fa fa-tags fa-fw"></i> ' . $result->tags . '</small><br />';
        }
        echo '<small>';
        echo "<span class='grey right'><i class='fa fa-user fa-fw'></i> $ank[nick]</span>";
        echo '<i class="fa fa-folder fa-fw"></i> <a href="index.php?r=' . $razdel->id . '">' . $razdel->name . '</a> &#183; ';
        echo '<i class="fa fa-eye fa-fw"></i> ' . $result->viewings . ' &#183; ';
        echo '<i class="fa fa-thumbs-up fa-fw"></i> ' . $result->rating . '<br/>';
        echo '</small></div>';
    }

    if ($k_page > 1) {
        str("?go&", $k_page, $page);
    }
} else {
    echo '<div class="list-group-item-null-mini list-group-item-grey dop">';
    echo lang('Введите текст для поиска');
    echo '</div>';
}

echo '<form method="post" action="?go" class="list-group-item-null-mini">';
$search = stripcslashes(htmlspecialchars($search));

$doc->Input('search', 'Ваш запрос', 64, "$search", 'form-control', 'text', 'required');

echo "<br />" . lang('Где искать') . '?<br />';
echo '<select name="where" class="custom-select">';
echo '<option value="2"' . ($where == 2 ? ' selected="selected"' : null) . '>' . lang('В тексте') . '</option>';
echo '<option value="1"' . ($where == 1 ? ' selected="selected"' : null) . '>' . lang('В названии') . '</option>';
echo '</select><br/><br />';

$doc->Button('btn btn-success btn-sm', null, 'search', 'Поиск');
echo '</form>';

require_once H . 'sys/inc/tfoot.php';