Вход Регистрация
Файл: modules/news/setting.news.php
Строк: 122
<?php
define
('SHCMS_ENGINE',true);
include_once(
'../../engine/system/core.php');
$templates->template(Lang::__('Настройка Новостей')); //Название страницы

//Если у тебя права 15 то ты можешь приступить к работе
if($groups->setAdmin($user_group) !=  15) {
    
header('Location: index.php');
    exit;
}
        
    
//Если разделов нет то выведит эту ошибку
    
$yes_sec $db->query('SELECT * FROM `news`');
    if(!
$db->num_rows($yes_sec)){
        
header('Location: index.php');
            exit;
   }

//Делаем облегчение создаем 2разных фукнции в одной станице
switch($act):

    
//Редактируем категорию
    
default:
        
//Обработка передаваемого $_GET параметра
        
$edit filter_input(INPUT_GET,'edit',FILTER_SANITIZE_STRING);
        
//Обработка полученного $_GET параметра
        
$id filter_input(INPUT_GET,'id',FILTER_SANITIZE_NUMBER_INT);
        
//Проверка находится ли там номерные данные
        
$id intval($id);
        
        
//Если $edit true
        
if(isset($edit) == 'edit') {
            
//Если вместо id num попытаются вставить текст то выводит ошибку
            
if (!isset($id) || !is_numeric($id)) {
                
header('Location: index.php');
                exit;
            }
    
//Выводим категорию по $ID
        
$category $db->query("SELECT * FROM `news` WHERE `id` = '".$id."'");
        
        
//Редактирование новостей
        
echo '<div class="mainname">'.Lang::__('Редактирование новостей').'</div>';
        
//Создаем массив ошибок
            
$error = array();
            
//Вытастиваем все данные по ID
            
$edit $db->get_array($category);
            
//Обработка полученного названия
            
$name filter_input(INPUT_POST,'name',FILTER_SANITIZE_STRING);
            
//Обработка кнопки
            
$update filter_input(INPUT_POST,'update');
            
//Обработка текста
            
$text filter_input(INPUT_POST,'text',FILTER_SANITIZE_STRING);
            
//Обработка краткого описания
            
$cr_news filter_input(INPUT_POST,'cr_news',FILTER_SANITIZE_STRING);
            
            echo 
'<div class="mainpost">';
        
//Проверяем нажата ли кнопка и если ли в поле input текст
        
if(isset($update)) {
            
//Проверяем существует ли название
            
if(empty($name)) {
            
$error['name'][] = Lang::__('Введите название новости!');
            }
                    
//Проверяем существует ли текст
                    
if(empty($text)){
            
$error['text'][] = Lang::__('Введите описание');
            }
                    
//Проверяем существует ли краткого описание
                    
if(empty($cr_news)){
                       
$error['cr_news'][] = Lang::__('Введите краткое описание');
                    }elseif(empty(
$error)) {  
                        
//Если не найдено ошибок начинаем обновление данных
            
$db->query("UPDATE `news` SET `title` = '".$db->safesql($name)."',`cr_news` = '".$db->safesql($cr_news)."',`text` = '".$db->safesql($text)."' WHERE `id` = '".$id."'");
            
header('Location: setting.news.php?act=editor_sec');
            exit;
            }
        }
                
            
//Форма редактирования новостей
            
$form = new form('?act=editor_sec&id='.$id.'&edit');
            
$form->input(Lang::__('Название:'),'name','text',$edit['title'],(isset($error['name']) ? '<span style="color:red"><small>' implode('<br />'$error['name']) . '</small></span><br />' ''));
            
$form->textarea(Lang::__('Полное описание:'),'text',$edit['text'],(isset($error['text']) ? '<span style="color:red"><small>' implode('<br />'$error['text']) . '</small></span><br />' ''));
        
$form->textarea(Lang::__('Краткое описание:'),'cr_news',$edit['cr_news'],(isset($error['cr_news']) ? '<span style="color:red"><small>' implode('<br />'$error['cr_news']) . '</small></span><br />' ''));
            
$form->submit(Lang::__('Обновить'),'update');
            
$form->display();
            
            echo 
'</div>';
        }
        
    
//Загружаем данные с базы
    
$section $db->query("SELECT * FROM `news`");
            
    echo 
'<div class="mainname">'.Lang::__('Список новостей').'</div>';
    
//Проверка на доступность разделов
        
if($db->num_rows($section)) {
            echo 
'<div class="mainpost">';
            
        
//Если все TRUE то выводим     
            
while($sec $db->get_array($section)) {
                
//Заносим данные в $eview
                
$eview  '<div class="sortable"><b>ID:'.$sec['id'].'</b>&nbsp;';
                
$eview .= '<a href="view.php?id='.$sec['id'].'">'.$sec['title'].'</a>';
                
$eview .= '<span class="time">';
                
$eview .= '<a href="?id='.$sec['id'].'&edit">';
                
$eview .= '<img src="/engine/template/icons/edit.png"/></a>&nbsp;&nbsp;';
                
$eview .= '<a href="?act=delete&id='.$sec['id'].'">';
                
$eview .= '<img src="/engine/template/icons/delete.png"/></a>';
                
$eview .= '</span></div>';
                
//Выводит все данные
                
echo $eview;
            }
            echo 
'</div>';
        }
    
    
//Переадресация на пред. старницу
    
echo engine::home(array(Lang::__('Назад'),'index.php'));

    
    break;

    
//Удаляем новость
    
case 'delete':
        
//Обработка полученного $_GET
        
$id filter_input(INPUT_GET,'id',FILTER_SANITIZE_NUMBER_INT);
        
//Проверка на номерные символы
        
$id intval($id);
        
//Обработка кнопки Удаление
        
$yes_delete filter_input(INPUT_POST,'yes_delete');
        
//Обработка кнопки Отмена удаление
        
$no_delete filter_input(INPUT_POST,'no_delete');
        
        
//Если вместо id num попытаются вставить текст то выводит ошибку
        
if (!isset($id) || !is_numeric($id)) {
            
header('Location: index.php');
            exit;
        }
            
    
//Если вы нажали на подтверждение то будет удалена новость с комментариями
    
if(isset($yes_delete)) {
            
//Удаляем новость            
            
$db->query('DELETE FROM `news` WHERE `id` = "'.$id.'"');
            
//Удаляем комментарии к новости            
            
$db->query('DELETE FROM `news_comment` WHERE `id_news` = "'.$id.'"');    
            
header('Location: setting.news.php?act=editor_sec');
        exit;
    }elseif(isset(
$no_delete)){
        
header('Location: setting.news.php?act=editor_sec'); //Пред. стараница
            
exit;
    }
            
            
    
//Подтверждение удаление    
   
echo '<div class="mainname">Подтверждение</div>';    
    echo 
'<div class="mainpost">';
    echo 
'Вы действительно хотите удалить выбранную новость? Данное действие невозможно будет отменить.<hr/>';
        
            
//Форма удаление
        
echo '<div style="text-align:right;">';
                
$form = new form('?act=delete&id='.$id.'');        
        
$form->submit('Да','yes_delete');
                
$form->submit('Нет','no_delete');        
                
$form->display();
        echo 
'</div></div>';
            
    break;
    
endswitch;
Онлайн: 0
Реклама