|
Server : Apache/2.4.18 (Ubuntu) System : Linux canvaswebdesign 3.13.0-71-generic #114-Ubuntu SMP Tue Dec 1 02:34:22 UTC 2015 x86_64 User : oppastar ( 1041) PHP Version : 7.0.33-0ubuntu0.16.04.15 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, Directory : /var/www/kamariallee.com/public_html/application/core/ |
Upload File : |
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class MY_Controller extends MX_Controller {
public $data = array(); //we create $data, empty array which will be used on every controller
public $data_header = array();
public $data_footer = array();
function __construct() {
parent::__construct();
} // end constructor
} //end My_Controller class
class Public_controller extends MY_Controller {
function __construct() {
parent::__construct();
//check if website is active
$this->db->select('website_active, website_ip')->from('configuration')->where('id_configuration', 1);
$website_status = $this->db->get()->row();
if($website_status->website_active == 'no') {
//WEBSITE IS NOT ACTIVE (MAINTENANCE MODE)
//get current IP
$current_ip = $this->input->ip_address(); //localhost ip is ::1
//check for allowed IP
$allowed_ips = explode(',', $website_status->website_ip);
if (in_array($current_ip, $allowed_ips) == 0) {
redirect(base_url('maintenance'));
} else {
//WEBSITE IS ACTIVE
$this->website_active();
}
} else {
//WEBSITE IS ACTIVE
$this->website_active();
}
} //end constructor function
private function website_active() {
$this->load->helper('form');
$this->load->library('cart');
//GET WEBSITE DETAILS, GOOGLE ANALYTICS
$this->db->select('logo, website_name, facebook, twitter, instagram, google_analytic_id, primary_color_theme, website_icon')->from('configuration')->where('id_configuration', 1);
$website_infos = $this->db->get()->row();
$this->data_header['logo'] = $website_infos->logo;
$this->data_header['website_name'] = $website_infos->website_name;
$this->data_header['google_analytic_id'] = $website_infos->google_analytic_id;
$this->data['facebook'] = $website_infos->facebook;
$this->data['twitter'] = $website_infos->twitter;
$this->data['instagram'] = $website_infos->instagram;
$this->data_header['primary_colortheme'] = $website_infos->primary_color_theme;
$this->data_header['website_icon'] = $website_infos->website_icon;
//TOP MAIN MENUS
$this->db->select('*')->from('menus')->where('status', 1)->order_by('priority', 'ASC');
$this->data_header['top_main_menus'] = $this->db->get()->result();
//FOOTERS
$this->db->select('*')->from('home_footer')->where('status', 1)->order_by('priority', 'ASC');
$this->data_footer['home_footer'] = $this->db->get()->result();
}
} //end class Public Controller
class Customer_controller extends MY_Controller
{
function __construct()
{
parent::__construct();
//check if website is active
$this->db->select('website_active, website_ip')->from('configuration')->where('id_configuration', 1);
$website_status = $this->db->get()->row();
if($website_status->website_active == 'no')
{
//WEBSITE IS NOT ACTIVE (MAINTENANCE MODE)
//get current IP
$current_ip = $this->input->ip_address(); //localhost ip is ::1
//check for allowed IP
$allowed_ips = explode(',', $website_status->website_ip);
if (in_array($current_ip, $allowed_ips) == 0)
{
redirect(base_url('maintenance'));
}
else
{
//WEBSITE IS ACTIVE
$this->website_active();
}
}
else
{
//WEBSITE IS ACTIVE
$this->website_active();
}
}
private function website_active()
{
$this->load->model('customer_m');
$this->load->helper('form');
$this->load->library('cart');
//logged in check, if loggedin is false, then kickout
//exclude some pages from the check
$exception_uris = array(
'register',
'register/new_registration',
'login',
'forgot_password',
'forgot_password/lost_password',
'login/process_login',
'register/logout',
'register/lost_password'
);
if(in_array(uri_string(), $exception_uris) == FALSE)
{
if($this->customer_m->loggedin() == FALSE)
{
redirect('login');
}
}
//WEBSITE DETAILS, GOOGLE ANALYTICS
$this->db->select('logo, website_name, facebook, twitter, instagram, google_analytic_id, primary_color_theme, website_icon')->from('configuration')->where('id_configuration', 1);
$website_infos = $this->db->get()->row();
$this->data_header['logo'] = $website_infos->logo;
$this->data_header['website_name'] = $website_infos->website_name;
$this->data_header['google_analytic_id'] = $website_infos->google_analytic_id;
$this->data['facebook'] = $website_infos->facebook;
$this->data['twitter'] = $website_infos->twitter;
$this->data['instagram'] = $website_infos->instagram;
$this->data_header['primary_colortheme'] = $website_infos->primary_color_theme;
$this->data_header['website_icon'] = $website_infos->website_icon;
//TOP MENUS
$this->db->select('*')->from('menus')->where('status', 1)->order_by('priority', 'ASC');
$this->data_header['top_main_menus'] = $this->db->get()->result();
//FOOTER
$this->db->select('*')->from('home_footer')->where('status', 1)->order_by('priority', 'ASC');
$this->data_footer['home_footer'] = $this->db->get()->result();
}
}
class Admin_controller extends MY_Controller {
function __construct() {
parent::__construct();
$this->load->helper('cms_helper');
$this->load->model('user_m');
$this->load->library('form_validation');
$this->form_validation->set_error_delimiters('<div class="error">', '</div>'); //above is to add class to form validation error, to be styled
$this->load->helper('form');
//logged in check, if loggedin is false, then kickout
//first exclude login and logout page from the check
$exception_uris = array(
'admin/user/login',
'admin/user/logout'
);
if(in_array(uri_string(), $exception_uris) == FALSE) {
if($this->user_m->loggedin() == FALSE) {
redirect('admin/user/login');
}
}
//get Website Name
$this->db->select('website_name')->from('configuration')->where('id_configuration', 1);
$this->data_header['website_name'] = $this->db->get()->row()->website_name;
$this->data_header['meta_title'] = 'Administration Page';
} // end constructor
} // end class admin controller