Pages::index PHP Метод

index() публичный Метод

public index ( )
    public function index()
    {
        $url = '?';
        $filter = array();
        if ($this->input->get('page')) {
            $filter['page'] = (int) $this->input->get('page');
        } else {
            $filter['page'] = '';
        }
        if ($this->config->item('page_limit')) {
            $filter['limit'] = $this->config->item('page_limit');
        }
        if ($this->input->get('filter_search')) {
            $filter['filter_search'] = $data['filter_search'] = $this->input->get('filter_search');
            $url .= 'filter_search=' . $filter['filter_search'] . '&';
        } else {
            $data['filter_search'] = '';
        }
        if (is_numeric($this->input->get('filter_status'))) {
            $filter['filter_status'] = $data['filter_status'] = $this->input->get('filter_status');
            $url .= 'filter_status=' . $filter['filter_status'] . '&';
        } else {
            $filter['filter_status'] = $data['filter_status'] = '';
        }
        $this->template->setTitle($this->lang->line('text_title'));
        $this->template->setHeading($this->lang->line('text_heading'));
        $this->template->setButton($this->lang->line('button_new'), array('class' => 'btn btn-primary', 'href' => page_url() . '/edit'));
        $this->template->setButton($this->lang->line('button_delete'), array('class' => 'btn btn-danger', 'onclick' => 'confirmDelete();'));
        if ($this->input->post('delete') and $this->_deletePage() === TRUE) {
            redirect('pages');
        }
        $data['pages'] = array();
        $results = $this->Pages_model->getList($filter);
        foreach ($results as $result) {
            $data['pages'][] = array('page_id' => $result['page_id'], 'name' => $result['name'], 'language' => $result['language_name'], 'date_updated' => mdate('%d %M %y - %H:%i', strtotime($result['date_updated'])), 'status' => $result['status'] === '1' ? 'Enabled' : 'Disabled', 'preview' => root_url('pages?page_id=' . $result['page_id']), 'edit' => site_url('pages/edit?id=' . $result['page_id']));
        }
        $config['base_url'] = site_url('pages' . $url);
        $config['total_rows'] = $this->Pages_model->getCount($filter);
        $config['per_page'] = $filter['limit'];
        $this->pagination->initialize($config);
        $data['pagination'] = array('info' => $this->pagination->create_infos(), 'links' => $this->pagination->create_links());
        $this->template->render('pages', $data);
    }

Usage Example

Пример #1
0
 function __construct()
 {
     //parent::_construct();
     global $database;
     $vari = $_SERVER['REQUEST_URI'];
     $vari = explode("/", $vari);
     if (isset($_GET['url'])) {
         $url = $_GET['url'];
         $url = rtrim($url);
         $url = explode('/', $_GET['url']);
     } else {
         $url = null;
     }
     if (empty($url[0])) {
         require "controllers/dashboard.php";
         $controller = new Dashboard();
         $controller->index();
         exit;
     }
     $file = "controllers/" . $url[0] . ".php";
     if (file_exists($file)) {
         require $file;
     } elseif ($vari[1] == 'scratch' && count($vari) === 3) {
         require "controllers/pages.php";
         $controller = new Pages();
         $controller->index();
         exit;
     } else {
         require "controllers/error.php";
         $controller = new Error();
         return false;
     }
     $controller = new $url[0]();
     if (isset($url[2]) && !empty($url[2])) {
         $controller->{$url[1]}($url[2]);
     } else {
         if (isset($url[1])) {
             $controller->{$url[1]}();
         }
     }
 }