Вход Регистрация
Файл: system/controllers/comments/hooks/moderation_list.php
Строк: 42
<?php

class onCommentsModerationList extends cmsAction {

    public function 
run($data){

        list(
$counts, $ctype_name, $page_url, $action) = $data;

        
$ctypes_list = array_keys($counts);

        
$exists = array_search($this->name, $ctypes_list);
        if(
$exists === false){ return false; }

        
$list_html = ''; $is_moderator = false;

        if(
$ctype_name == $ctypes_list[$exists]){

            if(
$action == 'index'){

                
$this->model->filterByModeratorTask($this->cms_user->id, $ctype_name, $this->cms_user->is_admin);

                
$is_moderator = true;

            } else
            if(
$action == 'waiting_list'){

                
$this->model->filterEqual('user_id', $this->cms_user->id);

                
$this->model->filterByModeratorTask($this->cms_user->id, $ctype_name, true);

            }

            
$this->model->disableApprovedFilter();

            
$page = $this->cms_core->request->get('page', 1);
            
$perpage = (empty($this->options['limit']) ? 15 : $this->options['limit']);

            
$this->model->orderBy('date_pub', 'desc');

            
$this->model->limitPage($page, $perpage);

            
cmsEventsManager::hook('comments_list_filter', $this->model);

            
// Получаем количество и список записей
            
$total = $this->model->getCommentsCount();
            
$items = $this->model->getComments();

            if(!
$items && $page > 1){ cmsCore::error404(); }

            
$items = cmsEventsManager::hook('comments_before_list', $items);

            
$list_html = $this->cms_template->renderInternal($this, 'list_moderation', array(
                
'page_url'     => $page_url,
                
'is_moderator' => $is_moderator,
                
'page'         => $page,
                
'perpage'      => $perpage,
                
'total'        => $total,
                
'items'        => $items,
                
'user'         => $this->cms_user
            
));

        }

        return array(
            
'name'      => $this->name,
            
'titles'    => array(
                
$this->name => LANG_COMMENTS
            
),
            
'list_html' => $list_html
        
);

    }

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