Вход Регистрация
Файл: modules/news/index.php
Строк: 320
<?php
define
('SHCMS_ENGINE',true);
include_once(
'../../engine/system/core.php');
$templates->template(Lang::__('Новости')); //Название страницы
    
switch($do):
    
//По умолчанию выводим основные параметры новостей
    
default:
    
//Доступ у кого имеются права 15
        
if($groups->setAdmin($user_group) == 15) {
            
$nview  '<div class="mainname">'.Lang::__('Управление').'</div>';
            
$nview .= '<div class="mainpost"><center>';
            
//Добавляем категорию
            
$nview .= '<div class="btn-group">';
            
$nview .= '<a class="btn btn-small btn-success" href="new.category.php">';
            
$nview .= '<img src="/engine/template/icons/folder_add.png">';
            
$nview .= '&nbsp;'.Lang::__('Добавить категорию').'</a>&nbsp;';  
            
//Настраиваем категорию
            
$nview .= '<a class="btn btn-small btn-inverse" href="setting.category.php">';
            
$nview .= '<img src="/engine/template/icons/app.png">&nbsp;';
            
$nview .= '&nbsp;'.Lang::__('Настройка категорий').'</a>';
            
//Настраиваем добавленные новости
            
$nview .= '&nbsp;<a class="btn btn-small btn-inverse" href="setting.news.php">';
            
$nview .= '<img src="/engine/template/icons/app.png">';
            
$nview .= '&nbsp;'.Lang::__('Настройка новостей').'</a>&nbsp;';
            
$nview .= '&nbsp;</div></center></div>';
            
            
//Получаем все данные 
            
echo $nview;
        }
        
//Если есть хоть одна категория начинаем добавлять новость
        
$ncategory $db->query("SELECT * FROM `news_category`");
            if(
$db->num_rows($ncategory) > and $users['group'] == 15) {
                
$aview .= '<div style="text-align:right;font-weight:bold;" class="subpost">';
                
$aview .= '<a href="new.news.php">';
                
$aview .= '<img src="/engine/template/icons/add.png">&nbsp;'.Lang::__('Опубликовать новость').'</a>';
                
$aview .= '</div>';
                
                echo 
$aview;
            }
        
//Дополнительные параметры
    
echo '<div class="mainname">Разделы</div>';
            echo 
'<div class="mainpost">';
        
//Поиск новостей
            
echo '<center><a class="btn btn-small" href="?do=input_search">';
            echo 
'<img src="/engine/template/icons/search.png"> Поиск Новостей</a>&nbsp;&nbsp;';
            
//Все действующие категории
            
echo '<a class="btn btn-small" href="?do=category">';
            echo 
'<img src="/engine/template/icons/chart.png"> Категории</a></center>';
        
            echo 
'</div>';
            
    
//Выводим счетчик постов
        
$row $db->get_array($db->query("SELECT COUNT(*) FROM `news`")); 
        
$newlist = new Navigation($row[0],25true); 
        
//Если писем больше 1 выводит из базы данные
            
if($row[0] > 0) {
            
$query $db->query("SELECT * FROM `news` ORDER BY `id` DESC "$newlist->limit()."");
        }else {
        echo 
'<div class="mainpost">Новостей не найдено.</div>';
        exit;
        }        

        while(
$news $db->get_array($query)) {
            
//Определяем ник
        
$nick $user->users($news['id_user'],array('nick'),false);
        
//Определяем id
            
$id_users $user->users($news['id_user'],array('id'));
        
//Определяем раздел новости
        
$views $db->get_array($db->query("SELECT * FROM `news_category` WHERE `id` = '".$news['id_cat']."'"));
        
//Выводим счетчик постов
            
$row1 $db->get_array($db->query("SELECT COUNT(*) FROM `news_comment` WHERE `id_news` = '".$news['id']."'"));
            
//Проверяем
            
if (!$int) {$int 3;}
            
//Cчитаем
            
$hostTime time();
                echo 
'<div class="mainpost">';
                
//Выводим
                
if ($hostTime $news['time']) {
                
$resultDays floor(($hostTime $news['time'])/86400);
                    
                    if ( 
$resultDays  <= $int ) {
                        echo  
'<img src="/engine/template/icons/new.gif">&nbsp;';
                    }    
                }
                if(
$users['group'] == 15) {
            
$resulte  '&nbsp;<a href="setting.news.php?act=editor_sec&id='.$news['id'].'&edit">';
                    
$resulte .= '<img src="/engine/template/icons/edit.png"></a>';
            
$resulte .= '&nbsp;<a href="setting.news.php?act=delete_sec&id='.$news['id'].'">';
                    
$resulte .= '<img src="/engine/template/icons/delete.png"></a>';
        }
         
//Выводи все записанные данные
            
echo '<b style="font-size:13px;">'.$news['title'].'</b>'.$resulte.'';
            echo 
'<span class="time">'.date::make_date($news['time']).'</span><br/>';
            echo 
'<div class="details">';
            echo 
'<span><img src="/engine/template/icons/folder.png">&nbsp;';
            echo 
'<a style="color:#1E90FF;" href="category.php?id='.$views['id'].'">'.$views['name'].'</a>';
            echo 
'</span>';
        echo 
'<span><img src="/engine/template/icons/author.png">&nbsp;';
            echo 
'<a style="color:#1E90FF;" href="'.MODULE.'profile.php?act=view&id='.$id_users.'">'.$nick.'</a>';
            echo 
'</span>';
        echo 
'<span><img src="/engine/template/icons/eye.png">&nbsp;';
            echo 
'<font color="#778899">'.engine::number($news['view']).'</font></span>';
        echo 
'<span><img src="/engine/template/icons/comment.png">&nbsp;';
            echo 
'<a style="color:#1E90FF;" href="view.php?id='.$news['id'].'">'.engine::number($row1[0]).' Комментарий</a>';
            echo 
'</span></div>';
        echo 
'<div class="lighter row2">'.engine::input_text($news['cr_news']).'</div>';  
            echo 
'<div class="row" style="height: 5px;line-height: 100%;padding: 10px 20px;">';
            echo 
'<span style="float:right;">';
            echo 
'<img align="middle" src="/engine/template/icons/view.png">&nbsp;';
            echo 
'<a href="view.php?id='.$news['id'].'">Читать дальше &raquo;</a></span>';
            echo 
'</div></div>';

        }
        
//Вывод навигации
        
echo $newlist->pagination(); 
    
    break;

    
//Выводим все категории
    
case 'category':
    echo 
'<div class="mainname">Все категории</div>';
    echo 
'<div class="mainpost">';
        
$lcat $db->query"SELECT * FROM `news_category`" );
                
//Вывод всех категорий          
        
while($category $db->get_array($lcat)) { 
                    
//Счетчик новостей в категории
            
$cont $db->get_array($db->query("SELECT COUNT(*) FROM `news` WHERE `id_cat` = '".intval($category['id'])."'"));
            
                        echo 
'<a href="category.php?id='.intval($category['id']).'">';
                        echo 
'<div class="row">';
                        echo 
'<img src="/engine/template/icons/list.png"> ';
                        echo 
$category['name'];
                        echo 
'<div class="time">'.$cont[0].'</div>';
                        echo 
'</div></a>';
        }
     echo 
'</div>';
    break;
    
    
//Форма для поиска новостей
    
case 'input_search':
    echo 
'<div class="mainname">'.Lang::__('Поиск Новостей').'</div>';
            echo 
'<div class="mainpost">';
        
$form = new form('index.php?do=search');
        
$form->input2(false,'search','text',false,'placeholder="Поиск новостей..."',false,false);
        
$form->submit('Искать','submit2');
        
$form->display();
        echo 
'</div>';

    break;

    
//Обработка поиска и получение данных
    
case 'search':

    function 
search($query) { 
        global 
$db,$user;
                
    
$query engine::trim($query); 
        
$query $db->safesql($query);
        
$query htmlspecialchars($query);
        
        if (!empty(
$query)) { 
            if (
strlen($query) < 3) {
                
$text '<p>Слишком короткий поисковый запрос.</p>';   
            } else if (
strlen($query) > 128) {
                
$text '<p>Слишком длинный поисковый запрос.</p>';
            } else { 
                
$q "SELECT * FROM `news` WHERE `title` LIKE '%$query%'";
                
$result $db->query($q);

            if (
$db->num_rows($result) > 0) { 
                
$row $db->get_array($result); 
                
$num $db->num_rows($result);
            
                
$text '<div class="mainname">По запросу <b>'.$query.'</b> найдено совпадений: '.$num.'</div>';
                
$text .= '<div class="mainpost">';
        
$text .= '<ul class="List_withminiphoto Pad_list">';    
                    
                    do {
                        
// Делаем запрос, получающий ссылки на статьи
                        
$q1 "SELECT * FROM `news` WHERE `id` = '$row[id]'";
                        
$result1 $db->query($q1);
                            if (
$db->num_rows() > 0) {
                            
$row1 $db->get_array($result1);
                           }
                            
//Определяем ник
                    
$nick $user->users($row['id_user'],array('nick'),false);
                    
//Определяем id
                            
$id_users $user->users($row['id_user'],array('id'));
                    
//Определяем раздел новости
                    
$views $db->get_array($db->query("SELECT * FROM `news_category` WHERE `id` = '".$row['id_cat']."'"));
                    
//Выводим счетчик постов
                            
$row1 $db->get_array($db->query("SELECT COUNT(*) FROM `news_comment` WHERE `id_news` = '".$row['id']."'"));
                        
//Проверяем
                        
if (!$int) {$int 3;}
                        
//Cчитаем
                        
$hostTime time();
                    echo 
'<div class="mainpost">';
                    
                    
//Выводим
                    
if ($hostTime $row['time']) {
                    
$resultDays floor(($hostTime $row['time'])/86400);
                        
                        if ( 
$resultDays  <= $int ) {
                            echo  
'<img src="/engine/template/icons/new.gif">&nbsp;';
                        }    
                    }
                    
//Выводи все записанные данные
                        
echo '<b style="font-size:13px;">'.engine::search_text($query,$row['title']).'</b>';
                        echo 
'<span class="time">'.date::make_date($row['time']).'</span><br/>';
                        echo 
'<div class="details"><span><img src="/engine/template/icons/folder.png">&nbsp;';
                        echo 
'<a style="color:#1E90FF;" href="category.php?id='.$views['id'].'">'.$views['name'].'</a>';
                        echo 
'</span>';
                echo 
'<span><img src="/engine/template/icons/author.png">&nbsp;';
                        echo 
'<a style="color:#1E90FF;" href="'.MODULE.'profile.php?act=view&id='.$id_users.'">'.$nick.'</a>';
                        echo 
'</span>';
                echo 
'<span><img src="/engine/template/icons/eye.png">&nbsp;';
                        echo 
'<font color="#778899">'.$row['view'].'</font></span>';
                echo 
'<span><img src="/engine/template/icons/comment.png">&nbsp;';
                        echo 
'<a style="color:#1E90FF;" href="view.php?id='.$row['id'].'">'.engine::number($row1[0]).' Комментарий</a>';
                        echo 
'</span></div>';
                echo 
'<div class="row">'.$row['cr_news'].'</div>';  
                        echo 
'<div class="row" style="height: 5px;line-height: 100%;padding: 10px 20px;">';
                        echo 
'<span style="float:right;"><a href="view.php?id='.$row['id'].'">Подробнее..</a>';
                        echo 
'</span></div></div>';

                    }while (
$row $db->get_array($result));
                                
                
$text .= '</ul></div>';                            
            } else {
        
$text '<p>По вашему запросу ничего не найдено.</p>';
            }
        } 
    } else {
        
$text '<p>Задан пустой поисковый запрос.</p>';
    }    
        return 
$text
    } 
    
$search filter_input(INPUT_POST,'search',FILTER_SANITIZE_SPECIAL_CHARS);
    if (!empty(
$search)) { 
            
$search_result search ($search); 
            echo 
$search_result
        }else {
        echo 
engine::error('Введите название новостя');
        }        
    break;
    
endswitch;
    
    
    
    echo 
engine::home(array('Назад','/index.php')); //Переадресация на главную
Онлайн: 1
Реклама