public function index()
 {
     $categoryObj = new categories_model();
     $categoryObj->where = array('published' => 1);
     $row_count = $categoryObj->count();
     // Customize pagination
     $config = $this->config->item('pagination');
     $config['base_url'] = base_url('categories');
     $config['total_rows'] = $row_count;
     $config['per_page'] = 4;
     $config['prefix'] = 'page/';
     $config["num_links"] = floor($config["total_rows"] / $config["per_page"]);
     $config['use_page_numbers'] = TRUE;
     $this->pagination->initialize($config);
     $page = $this->uri->segment(3) ? $this->uri->segment(3) : 0;
     $categoryObj->limit = $config['per_page'];
     $categoryObj->offset = $page;
     $this->data['categories'] = $categoryObj->get();
     $this->data['pagination'] = $this->pagination->create_links();
     /*----------  Meta Details  ----------*/
     $this->page = $this->config->item('pages')['categories'];
     $this->data['title'] = $this->page['title'];
     $this->data['keywords'] = $this->page['keywords'];
     $this->data['description'] = $this->page['description'];
     $this->data['social_meta_title'] = $this->page['social_meta_title'];
     $this->data['social_meta_image'] = $this->page['social_meta_image'];
     /*---------- End Meta Details  ----------*/
     $this->data['content'] = 'pages/category';
     $this->load->view('layout', $this->data);
 }
 public function __construct()
 {
     parent::__construct();
     $this->data['site_details'] = $this->config->item('site_details');
     $this->load->model('categories_model');
     $this->load->model('products_model');
     $categoryObj = new categories_model();
     $categoryObj->where = array('published' => 1);
     $this->data['categories'] = $categoryObj->get();
 }
 public function __construct()
 {
     parent::__construct();
     if (!$this->ion_auth->is_admin()) {
         $this->session->set_flashdata('message', 'You must be an admin to view this page');
         redirect('users/login');
     }
     $this->data['site_details'] = $this->config->item('site_details');
     $this->load->model('categories_model');
     $this->load->model('products_model');
     $categoryObj = new categories_model();
     $categoryObj->where = array('published' => 1);
     $this->data['categories'] = $categoryObj->get();
 }
 public function index()
 {
     $productObj = new products_model();
     $productObj->limit = 4;
     $productObj->where = array('published' => 1, 'featured' => 1);
     $this->data['featured_products'] = $productObj->get();
     if ($this->data['featured_products']) {
         foreach ($this->data['featured_products'] as $product) {
             if ($product->category) {
                 $categoryObj = new categories_model();
                 $categoryObj->id = $product->category;
                 $category = $categoryObj->get();
                 $product->category = $category->name;
                 $product->category_url = $category->url;
             }
         }
     }
     $productObj = new products_model();
     $productObj->limit = 4;
     $productObj->order = array('date_published', 'desc');
     $productObj->where = array('published' => 1);
     $this->data['new_products'] = $productObj->get();
     if ($this->data['new_products']) {
         foreach ($this->data['new_products'] as $product) {
             if ($product->category) {
                 $categoryObj = new categories_model();
                 $categoryObj->id = $product->category;
                 $category = $categoryObj->get();
                 $product->category = $category->name;
                 $product->category_url = $category->url;
             }
         }
     }
     /*----------  Meta Details  ----------*/
     $this->page = $this->config->item('pages')['home'];
     $this->data['title'] = $this->page['title'];
     $this->data['keywords'] = $this->page['keywords'];
     $this->data['description'] = $this->page['description'];
     $this->data['social_meta_title'] = $this->page['social_meta_title'];
     $this->data['social_meta_image'] = $this->page['social_meta_image'];
     /*----------  End Meta Details  ----------*/
     $this->data['content'] = 'pages/home';
     $this->load->view('layout', $this->data);
 }
 public function index($product_url = '')
 {
     $categoryObj = new categories_model();
     $categoryObj->where = array('published' => 1);
     $this->data['categories'] = $categoryObj->get();
     if ($product_url && $product_url != 'page') {
         $productObj = new products_model();
         $productObj->where = array('url' => $product_url);
         $productObj->id = $productObj->get_id();
         $this->data['product'] = $productObj->get();
         if ($this->data['product']->category) {
             $categoryObj = new categories_model();
             $categoryObj->id = $this->data['product']->category;
             $category = $categoryObj->get();
             $this->data['product']->category = $category->name;
             $this->data['product']->category_url = $category->url;
         }
         /*----------  Meta Details  ----------*/
         $this->data['title'] = $this->data['product']->name . ' | ' . $this->page['title'];
         $this->data['keywords'] = $this->data['product']->meta_keywords;
         $this->data['description'] = $this->data['product']->meta_description;
         $this->data['social_meta_title'] = $this->data['product']->social_meta_title ? $this->data['product']->social_meta_title : $this->data['product']->name . ' | ' . $this->page['title'];
         $this->data['social_meta_image'] = $this->data['product']->social_meta_image ? $this->data['product']->social_meta_image : '';
         /*----------  End Meta Details  ----------*/
         $this->data['content'] = 'pages/product_view';
         $this->load->view('layout', $this->data);
     } else {
         $productObj = new products_model();
         $productObj->where = array('published' => 1);
         /*----------  Meta Details  ----------*/
         $this->data['title'] = $this->page['title'];
         $this->data['keywords'] = $this->page['keywords'];
         $this->data['description'] = $this->page['description'];
         $this->data['social_meta_title'] = $this->page['social_meta_title'];
         $this->data['social_meta_image'] = $this->page['social_meta_image'];
         /*----------  End Meta Details  ----------*/
         if ($this->input->get()) {
             if ($this->data['category_url'] = $this->input->get('category', TRUE)) {
                 $categoryObj = new categories_model();
                 $categoryObj->where = array('url' => $this->data['category_url']);
                 $categoryObj->id = $categoryObj->get_id();
                 $category = $categoryObj->get();
                 if (!$category) {
                     redirect(base_url('products'), 'location', 'refresh');
                 }
                 $this->data['heading'] = $category->name;
                 /*----------  Meta Details  ----------*/
                 $this->data['title'] = $category->name . ' | ' . $this->page['title'];
                 $this->data['keywords'] = $category->meta_keywords;
                 $this->data['description'] = $category->meta_description;
                 $this->data['current_url'] = base_url('products') . '?category=' . $this->data['category_url'];
                 $this->data['social_meta_title'] = $category->social_meta_title ? $category->social_meta_title : $category->name . ' | ' . $this->page['title'];
                 $this->data['social_meta_image'] = $category->social_meta_image ? $category->social_meta_image : '';
                 /*----------  End Meta Details  ----------*/
                 $productObj->where = array('published' => 1, 'category' => $categoryObj->id);
             } elseif ($this->data['category_url'] = $this->input->get('category', TRUE) && ($this->data['sort'] = $this->input->get('sort', TRUE))) {
                 $categoryObj = new categories_model();
                 $categoryObj->where = array('url' => $this->data['category_url']);
                 $categoryObj->id = $categoryObj->get_id();
                 $category = $categoryObj->get();
                 if (!$category) {
                     redirect(base_url('products'), 'location', 'refresh');
                 }
                 $this->data['heading'] = $category->name;
                 /*----------  Meta Details  ----------*/
                 $this->data['title'] = $category->name . ' | ' . $this->page['title'];
                 $this->data['keywords'] = $category->meta_keywords;
                 $this->data['description'] = $category->meta_description;
                 $this->data['current_url'] = base_url('products') . '?category=' . $this->data['category_url'];
                 $this->data['social_meta_title'] = $category->social_meta_title ? $category->social_meta_title : $category->name . ' | ' . $this->page['title'];
                 $this->data['social_meta_image'] = $category->social_meta_image ? $category->social_meta_image : '';
                 /*----------  End Meta Details  ----------*/
                 switch ($this->data['sort']) {
                     case 'featured':
                         $productObj->where = array('published' => 1, 'category' => $categoryObj->id);
                         $productObj->where = array('published' => 1, 'featured' => 1);
                         break;
                     case 'latest':
                         $productObj->where = array('published' => 1, 'category' => $categoryObj->id);
                         $productObj->order = array('date_published', 'desc');
                         break;
                     case 'oldest':
                         $productObj->order = array('date_published', 'asc');
                         $productObj->where = array('published' => 1, 'category' => $categoryObj->id);
                         break;
                     case 'price-high-to-low':
                         $productObj->order = array('price', 'desc');
                         $productObj->where = array('published' => 1, 'category' => $categoryObj->id);
                         break;
                     case 'price-low-to-high':
                         $productObj->order = array('price', 'asc');
                         $productObj->where = array('published' => 1, 'category' => $categoryObj->id);
                         break;
                     default:
                         $productObj->where = array('published' => 1, 'category' => $categoryObj->id);
                         break;
                 }
             } elseif ($this->data['sort'] = $this->input->get('sort', TRUE)) {
                 switch ($this->data['sort']) {
                     case 'featured':
                         $productObj->where = array('published' => 1, 'featured' => 1);
                         break;
                     case 'latest':
                         $productObj->order = array('date_published', 'desc');
                         break;
                     case 'oldest':
                         $productObj->order = array('date_published', 'asc');
                         break;
                     case 'price-high-to-low':
                         $productObj->order = array('price', 'desc');
                         break;
                     case 'price-low-to-high':
                         $productObj->order = array('price', 'asc');
                         break;
                     default:
                         # code...
                         break;
                 }
             } else {
                 redirect(base_url('products'), 'location', 'refresh');
             }
         }
         $row_count = $productObj->count();
         // Customize pagination
         $config = $this->config->item('pagination');
         $config['base_url'] = base_url('products');
         $config['total_rows'] = $row_count;
         $config['per_page'] = 8;
         $config['prefix'] = 'page/';
         $this->pagination->initialize($config);
         $page = $this->uri->segment(3) ? $this->uri->segment(3) : 0;
         $productObj->limit = $config['per_page'];
         $productObj->offset = $page;
         $this->data['products'] = $productObj->get();
         if ($this->data['products']) {
             foreach ($this->data['products'] as $product) {
                 if ($product->category) {
                     $categoryObj = new categories_model();
                     $categoryObj->id = $product->category;
                     $category = $categoryObj->get();
                     $product->category = $category->name;
                     $product->category_url = $category->url;
                 }
             }
         }
         $this->data['pagination'] = $this->pagination->create_links();
         $this->data['content'] = 'pages/products';
         $this->load->view('layout', $this->data);
     }
 }
 public function delete($id)
 {
     $categoryObj = new categories_model();
     $categoryObj->id = $id;
     $categoryObj->delete();
     redirect('admin/category', 'refresh');
 }