Вход Регистрация
Файл: application/controllers/admin/Home.php
Строк: 709
<?php
 defined
('BASEPATH') OR exit('No direct script access allowed');
 
/**
 * Home controller class
 *
 * Displays the admin dashboard
 *
 * @package        cifullcalendar+
 * @category    Controller
 * @author        sirdre
 * @link        index.php/home
 */ 
 
class Home extends CI_Controller {

    
/*
     * Home controller class constructor
     */

    
function Home() {
    
parent::__construct();  
    
$this->load->model('Member_model');
    
$this->load->model('Member_admin_model');
    
$this->load->model('Fullcalendar_admin_model','calendar');
    
$this->load->model('gmaps_model');        
    
$this->load->model('Eventsources_model'); 
    
$this->load->model('Page_model');
    
    
$this->load->helper('date');     
    
$this->load->helper('security');
    
$this->load->helper('form');
    
$this->load->helper('url'); 
    
    
$this->load->library('ion_auth');
    
$this->load->library('Languages');
    
$this->load->library('form_validation');  
    
$this->load->library('Icalendar');  
    
$this->load->library('upload');
    
$this->load->library('image_lib');
    
    
// load all settings into an array
    
$this->setting $this->Setting_model->getEverySetting();
    }

    
/*
     * index function (default)
     *
     * display manager home page
     */

    
function index() { 
     
        
// set the page language, site name, page title, meta keywords and meta description  
        
$data['lang'] = $this->setting['site_language'];         
        
        
$this->languages->get_lang($data['lang']);
        
        
$data['site_name'] = $this->setting['site_name'];
        
$data['page_title'] = lang('dashboard');
        
$data['meta_keywords'] = $this->setting['meta_keywords'];
        
$data['meta_description'] = $this->setting['meta_description'];  
        
$data['key'] = $this->setting['cal_apikey'];
        
$data['current_version'] = $this->setting['current_version'];      
        
        
// check if the user is logged in 
        
if ($this->ion_auth->is_admin()) {
            
            
$user $this->ion_auth->user()->row();
             
            
$data['userinfo'] = $this->Member_model->getUserById($user->id);
    
            
// if there is a site logo, get the path to the image file
            
if ($this->Member_model->userImageExists$data['userinfo']->image,  $data['userinfo']->id) !== '') {
                
$data['current_logo'] = base_url().'assets/img/profile/'$data['userinfo']->image;;
            } else {
                
// no logo so leave it blank
                
$data['current_logo'] = base_url().'assets/img/profile/default.png';
            }    
            
            
// display amount summary
            
$data['events_count'] = $this->calendar->countCalendarEvents();
            
$data['queue_count'] = $this->calendar->countEventsQueues();
            
$data['gmaps_count'] = $this->gmaps_model->countlocationMarkers();
            
$data['users_count'] = $this->Member_model->countUsers();
            
            
// load a page of custom pages into an array for displaying in the view
            
$data['pagename'] = $this->Page_model->getAllPages(8$this->uri->segment(4));                
            
$data['users_list'] = $this->Member_admin_model->getAllUsers(0); 
     
            
// display home page
            
debug('Initialize index - loading "admin/index" view');
            
$sections = array('body_content' => $this->setting['current_theme'] . '/backend/admin/index''nav_content' => $this->setting['current_theme'] . '/backend/admin/nav''header_content' => $this->setting['current_theme'] . '/backend/admin/header''footer_content' => $this->setting['current_theme'] . '/backend/admin/footer');
            
$this->template->load($this->setting['current_theme'] . '/backend/masterpage'$sections$data);
  
        } else {
            
// user not found, redirect to users list
            
debug('Initialize index - loading "login/index" view');
            
redirect('/admin/login'301); 
        } 

    }
    
     
/**
    * get_marker events and shows
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_marker() { 
        if (
$this->ion_auth->is_admin()) {
            
$category $this->security->xss_clean($this->input->get('category'));
            
$marker $this->gmaps_model->get_all($category); 
            echo 
json_encode($marker); 
        } else { 
            
redirect('/admin/login'301); 
        }         
    }
    
     
/**
    * get_category events and shows
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
    
public function get_category()    { 
    
        
// check if the user is logged in 
        
if ($this->ion_auth->is_admin()) {
            
            
$user $this->ion_auth->user()->row();  
            
$category $this->gmaps_model->category($user->username);
            
            echo 
json_encode($category);
        } else {
            
// user not found, redirect to users list
            
debug('Initialize index - loading "login/index" view');
            
redirect('/admin/login'301); 
        } 
    }
    
     
/**
    * get_eventsource get the list of 20 event sources
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
    
public function get_eventsource() { 
        
        
// check if the user is logged in 
        
if ($this->ion_auth->is_admin()) {
            
            
$user $this->ion_auth->user()->row();   
            
$category $this->Eventsources_model->getSourceList(20,0,$user->username);
            
            echo 
json_encode($category);
        } else {
            
// user not found, redirect to users list
            
debug('Initialize index - loading "login/index" view');
            
redirect('/admin/login'301); 
        } 
    }    
    
    
/**
    * search - query events by title
    *
    ****
    * @access public
    * @ Param none
    * @ Return string with the last query 
    */        
    
public function search() { 
        
// check if the user is logged in 
        
if ($this->ion_auth->is_admin()) {
            
            
$user $this->ion_auth->user()->row();     
            
$title $this->security->xss_clean($this->input->get('title')); 
            
            echo 
$this->calendar->search_admin($title$user->username); 
        } else {
            
// user not found, redirect to users list
            
debug('Initialize index - loading "login/index" view');
            
redirect('/admin/login'301); 
        }     
    }    
    
    
/**
    * get_lang events and shows
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_lang() {  
    
        
$lang $this->setting['site_language'];     
        echo 
json_encode($lang); 
    }     
    
    
/**
    * get_timezone get timezone timedate format
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_timezone() { 
        
// check if the user is logged in 
        
if ($this->ion_auth->is_admin()) {
                      
            
$datetime = new DateTime('now', new DateTimeZone($this->setting['site_timezone']));
            
$datetime_string $datetime->format('c'); 
            
            echo 
json_encode($datetime_string);
        } else {
            
// user not found, redirect to users list
            
debug('Initialize index - loading "login/index" view');
            
redirect('/admin/login'301); 
        } 
    }    
    
/**
    * get_timezone2 get timezone string
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_timezone2() {  
            
$datetime_string $this->setting['site_timezone']; 
            echo 
json_encode($datetime_string);
     
    }    
    
/**
    * get_defaultview events and shows
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_defaultview() {  
            
$defaultview $this->setting['cal_defaultview'];  
            echo 
json_encode($defaultview); 
    }    
    
    
/**
    * get_header_left - headers buttons
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_header_left() { 
         
            
$header_left $this->setting['cal_header_left'];  
            echo 
json_encode($header_left);
     
    }
    
    
/**
    * get_header_center - headers buttons
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_header_center() { 
         
            
$header_center $this->setting['cal_header_center'];  
            echo 
json_encode($header_center);
 
    }    
    
    
/**
    * get_header_center - headers buttons
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_header_right() { 
     
            
$header_right $this->setting['cal_header_right']; 
            echo 
json_encode($header_right); 
    }    
    
    
/**
    * get_firstday - calendar preference
    * This function is called to specify calendar default hiddenDays.
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_firstday() {  
              
            
$firstday $this->setting['cal_firstday'];  
            echo 
json_encode($firstday);
 
    }
    
    
/**
    * get_aspectratio - calendar preference
    * This function is called to specify calendar default view for slot duration.
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_aspectratio() {
 
            
$aspectratio $this->setting['cal_aspectratio'];     
            echo 
json_encode($aspectratio);  
    }
    
    
/**
    * get_editable - calendar preference
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_editable() { 
     
            
$editable $this->setting['cal_editable']; 
            echo 
json_encode($editable); 
    }    
    
    
/**
    * get_hiddenDays - calendar preference
    * This function is called to specify calendar default hiddenDays.
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_hiddendays() { 
                  
            
$hiddendays $this->setting['cal_hiddendays']; 
            echo 
json_encode($hiddendays); 
    }    
    
    
/**
    * get_businessstart - calendar preference
    * This function is called to specify calendar default hiddenDays.
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_businessstart() { 
           
            
$businessstart $this->setting['cal_businessstart'];  
            echo 
json_encode($businessstart); 
    }        
    
    
/**
    * get_businessend - calendar preference
    * This function is called to specify calendar default hiddenDays.
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_businessend() { 
       
            
$businessend $this->setting['cal_businessend'];  
            echo 
json_encode($businessend); 
    }        
    
    
/**
    * get_businessdays - calendar preference
    * This function is called to specify calendar default hiddenDays.
    ****
    * @access public
    * @Param none
    * @return none
    */
     
public function get_businessdays() { 
          
            
$businessdays $this->setting['cal_businessdays'];  
            echo 
json_encode($businessdays); 
    }            
    
    
/**
    * get_weeknumbers - calendar preference
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_weeknumbers() { 
 
            
$weeknumbers $this->setting['cal_weeknumbers']; 
            echo 
json_encode($weeknumbers); 
    }    
    
    
/**
    * get_eventlimit - calendar preference
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_eventlimit() {  
    
            
$eventlimit $this->setting['cal_eventlimit'];  
            echo 
json_encode($eventlimit); 
    }
        
    
/**
    * get_alldayslot - calendar preference
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_alldayslot() {  
    
            
$alldayslot $this->setting['cal_alldayslot']; 
            echo 
json_encode($alldayslot); 
    }        

    
/**
    * get_slotlabeling - calendar preference
    * This function is called to specify calendar default view for slot labeling.
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_slotlabeling() {  
    
            
$slotlabeling $this->setting['cal_slotlabeling'];     
            echo 
json_encode($slotlabeling); 
    }    
    
    
/**
    * get_slotduration - calendar preference
    * This function is called to specify calendar default view for slot duration.
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_slotduration() {  
    
            
$slotduration $this->setting['cal_slotduration'];     
            echo 
json_encode($slotduration); 
    }
    
    
/**
    * get_isrtl - calendar preference
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
     
public function get_isrtl() {  
    
            
$isrtl $this->setting['cal_isrtl'];  
            echo 
json_encode($isrtl); 
    }        
    
     
/**
    * Generates events by users
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
    
public function json () {       
    
        
header("Content-Type: application/json");         
        
// check if the user is logged in 
        
if ($this->ion_auth->is_admin()) { 
            
$user $this->ion_auth->user()->row();         
            echo 
$this->calendar->jsonEvents($user->username);
            
        } else {
            
// user not found, redirect to users list
            
debug('Initialize index - loading "login/index" view');
            
redirect('/admin/login'301); 
        }
    }
 
    
/**
    * Generates get events by users and category
    * This function is called from calendar.custom.js
    ****
    * @access public
    * @ Param none
    * @return none
    */
    
public function jsoncat ( )  {       
    
        
header("Content-Type: application/json");         
        
// check if the user is logged in 
        
if ($this->ion_auth->is_admin()) { 
            
$user $this->ion_auth->user()->row();          
            
$category $this->security->xss_clean($this->input->get('category')); 
            echo 
$this->calendar->jsonEventsCategory($category$user->username);
        
        } else {
            
// user not found, redirect to users list
            
debug('Initialize index - loading "login/index" view');
            
redirect('/admin/login'301); 
        }
    }
  

}

/* End of file home.php */
/* Location: ./application/controllers/admin/home.php */
Онлайн: 3
Реклама