Advertisement
VladimirsBudkins

private controller example

Mar 21st, 2017
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.72 KB | None | 0 0
  1. //application/core/PrivateController
  2. <?php
  3.  
  4. class PrivateController extends BaseController {
  5.  
  6.     public $userSessionData = null;
  7.  
  8.     public function __construct() {
  9.         parent::__construct();
  10.         if (!$this->authorization->isLoggedIn()) {
  11.             redirect('auth');
  12.         }
  13.         $this->load->library(['Breadcrumbs', 'form_validation', 'pagination']);
  14.         $this->lang->init('cookies');
  15.         $this->breadcrumbs->push('Dashboard', 'admin/dashboard');
  16.         $this->template
  17.                 ->setTheme('backend')
  18.                 ->setTpl('base_tpl')
  19.                 ->addAssets([
  20.                     'customCss' => ['vendor/bootstrap/css/bootstrap.min.css', 'vendor/metisMenu/metisMenu.min.css', 'vendor/font-awesome/css/font-awesome.min.css'],
  21.                     'customJs' => ['vendor/jquery/jquery-2.1.1.min.js', 'vendor/bootstrap/js/bootstrap.min.js', 'vendor/metisMenu/metisMenu.min.js'],
  22.                     'css' => ['sb-admin-2.min.css', 'style.css'],
  23.                     'js' => ['sb-admin-2.js', 'script.js']
  24.                 ])
  25.                 ->setData([
  26.                     'pageTitle' => 'Admin Panel'
  27.                 ])
  28.                 ->setBlocks([
  29.                     'main' => $this->router->class . DIRECTORY_SEPARATOR . $this->router->method,
  30.                     'header' => 'header',
  31.                     'footer' => 'footer',
  32.                     'top' => 'top',
  33.                     'navigation' => 'navigation'
  34.         ]);
  35.     }
  36.  
  37. }
  38.  
  39. //application/controllers/admin/Php_logs
  40.  
  41. <?php
  42.  
  43. defined('BASEPATH') OR exit('No direct script access allowed');
  44.  
  45. class Php_logs extends PrivateController {
  46.  
  47.     public function __construct() {
  48.     parent::__construct();
  49.     $this->breadcrumbs->push('PHP logs', 'admin/php_logs');
  50.     $this->template->setBlocks(['sub_nav' => 'php_logs/_sub_nav']);
  51.     $this->load->model('PHPLogsModel');
  52.     }
  53.  
  54.     public function index() {
  55.     $data['logList'] = $this->PHPLogsModel->parseDirectory();
  56.     $data['currentFile'] = $data['logList'] ? current($data['logList']) : null;
  57.     if ($data['logList']) {
  58.         $data['currentFile'] = current($data['logList']);
  59.     }
  60.     if ($this->uri->rsegment(3)) {
  61.         $data['currentFile'] = $this->uri->rsegment(3);
  62.     }
  63.     if (!is_null($data['currentFile']) && !in_array($data['currentFile'], $data['logList'], true)) {
  64.         show_404();
  65.     }
  66.     $data['logs'] = $this->PHPLogsModel->parseFile($data['currentFile']);
  67.     $this->template->addAssets(['js' => ['php-logs.js']])->render($data);
  68.     }
  69.    
  70.     public function delete() {
  71.     $file = $this->uri->rsegment(3);
  72.     if($file){
  73.         $this->PHPLogsModel->deleteFile($file);
  74.         $this->flashmessages->set("PHP logs file {$file} deleted", 'danger');
  75.     }
  76.     redirect('admin/php_logs');
  77.     }
  78.  
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement