Вход Регистрация
Файл: app/models/admin/AdminAdsModel.php
Строк: 166
<?php

class AdminAdsModel extends Base {

    function 
index() {
        
//список
        
$count DB::run("SELECT COUNT(*) FROM `ads`")->fetchColumn();
        if (
$count 0) {
            
$req DB::run("SELECT `ads`.*, (SELECT COUNT(1) FROM `ads_stat` WHERE `ads_stat`.`id_link`=`ads`.`id`) AS `counts` FROM `ads` ORDER BY `id` DESC LIMIT " $this->page ", " $this->message);
            while (
$row $req->fetch(PDO::FETCH_ASSOC)) {
                
$arrayrow[] = $row;
            }
        }

        
SmartySingleton::instance()->assign(array(
            
'count' => $count,
            
'arrayrow' => $arrayrow,
            
'pagenav' => Functions::pagination(Cms::setup('adminpanel') . '/ads?'$this->page$count$this->message)
        ));
        
SmartySingleton::instance()->display(SMARTY_TEMPLATE_LOAD '/templates/admin/ads/index.tpl');
    }

    function 
add() {
        if (
$_POST['ok']) {

            
$time Cms::realtime() + $_POST['ch'] * $_POST['mn'] * 60 60 24;

            if (empty(
$_POST['link'])) {
                
$error .= 'Не указана ссылка!<br/>';
            }

            if (empty(
$_POST['text'])) {
                
$error .= 'Не введен текст, содержание рекламного материала!<br/>';
            }

            if (!isset(
$error)) {
                
DB::run("INSERT INTO `ads` SET 
                    `link`='" 
Cms::Input($_POST['link']) . "', 
                        `name`='" 
Cms::Input($_POST['name']) . "', 
                            `text`='" 
Cms::Input($_POST['text']) . "', 
                                `type`='" 
Cms::Input($_POST['type']) . "', 
                                    `target`='" 
Cms::Input($_POST['target']) . "', 
                                        `count`='" 
Cms::Input($_POST['count']) . "', `time`='" $time "'");

                if (
Cms::setup('adminlogs') == 1) {
                    
Cms::adminlogs('Рекламный менеджер''Добавление новой рекламной ссылки ' Cms::Input($_POST['link']));
                } 
//пишем лог админа, если включено
                
Functions::redirect(Cms::setup('adminpanel') . '/ads');
            }
        }

        
SmartySingleton::instance()->assign(array(
            
'error' => $error
        
));
        
SmartySingleton::instance()->display(SMARTY_TEMPLATE_LOAD '/templates/admin/ads/add.tpl');
    }

    function 
edit($id) {
        
$row DB::run("SELECT * FROM `ads` WHERE `id`='" $id "'")->fetch(PDO::FETCH_ASSOC);

        if (
$_POST['ok']) {

            if (
$row['time'] > Cms::realtime()) {
                
$time $row['time'] + $_POST['ch'] * $_POST['mn'] * 60 60 24;
            } else {
                
$time Cms::realtime() + $_POST['ch'] * $_POST['mn'] * 60 60 24;
            }

            if (empty(
$_POST['link'])) {
                
$error .= 'Не указана ссылка!<br/>';
            }

            if (empty(
$_POST['text'])) {
                
$error 'Не введен текст, содержание рекламного материала!';
            }

            if (!isset(
$error)) {
                
DB::run("UPDATE `ads` SET 
                    `link`='" 
Cms::Input($_POST['link']) . "', 
                        `name`='" 
Cms::Input($_POST['name']) . "', 
                            `text`='" 
Cms::Input($_POST['text']) . "', 
                                `type`='" 
Cms::Input($_POST['type']) . "', 
                                    `target`='" 
Cms::Input($_POST['target']) . "', 
                                        `count`='" 
Cms::Input($_POST['count']) . "', `time`='" $time "' WHERE `id`='" $row['id'] . "'");

                if (
Cms::setup('adminlogs') == 1) {
                    
Cms::adminlogs('Рекламный менеджер''Редактирование рекламной ссылки ' Cms::Input($_POST['link']));
                } 
//пишем лог админа, если включено
                
Functions::redirect(Cms::setup('adminpanel') . '/ads');
            }
        }

        
SmartySingleton::instance()->assign(array(
            
'row' => $row,
            
'error' => $error
        
));
        
SmartySingleton::instance()->display(SMARTY_TEMPLATE_LOAD '/templates/admin/ads/edit.tpl');
    }

    function 
del($id) {
        
$row DB::run("SELECT * FROM `ads` WHERE `id`='" $id "'")->fetch(PDO::FETCH_ASSOC);

        if (
$_POST['ok']) {
            
DB::run("DELETE FROM `ads` WHERE `id` = '" $row['id'] . "' LIMIT 1");
            
DB::run("DELETE FROM `ads_stat` WHERE `id_link` = '" $row['id'] . "'");
            
DB::run("OPTIMIZE TABLE `ads`");
            
DB::run("OPTIMIZE TABLE `ads_stat`");

            if (
Cms::setup('adminlogs') == 1) {
                
Cms::adminlogs('Рекламный менеджер''Удаление рекламной ссылки ' Cms::Input($_POST['link']));
            } 
//пишем лог админа, если включено
            
Functions::redirect(Cms::setup('adminpanel') . '/ads');
        }

        if (
$_POST['close']) {
            
Functions::redirect(Cms::setup('adminpanel') . '/ads');
        }

        
SmartySingleton::instance()->assign(array(
            
'row' => $row
        
));
        
SmartySingleton::instance()->display(SMARTY_TEMPLATE_LOAD '/templates/admin/ads/del.tpl');
    }

    function 
stat($id) {
        
$row DB::run("SELECT * FROM `ads` WHERE `id`='" $id "'")->fetch(PDO::FETCH_ASSOC);

        
$count DB::run("SELECT COUNT(*) FROM `ads_stat` WHERE `id_link`=" $row['id'] . "")->fetchColumn();
        if (
$count 0) {
            
$req DB::run("SELECT * FROM `ads_stat` WHERE `id_link`=" $row['id'] . " ORDER BY `id` DESC LIMIT " $this->page ", " $this->message);
            while (
$rows $req->fetch(PDO::FETCH_ASSOC)) {
                
$arrayrow[] = $rows;
            }
        }

        
SmartySingleton::instance()->assign(array(
            
'row' => $row,
            
'count' => $count,
            
'arrayrow' => $arrayrow,
            
'pagenav' => Functions::pagination(Cms::setup('adminpanel') . '/ads/' $row['id'] . '?'$this->page$count$this->message)
        ));
        
SmartySingleton::instance()->display(SMARTY_TEMPLATE_LOAD '/templates/admin/ads/stat.tpl');
    }

}
Онлайн: 2
Реклама