/home/hdwebsolution/public_html/sareenn/application/controllers/Home.php
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Home extends CI_Controller
{
public function __construct()
{
parent::__construct();
date_default_timezone_set('Asia/Kolkata');
}
public function index()
{
$data['page'] = 'home';
$data['title'] = 'Medical equipment manufacturer in Delhi, India- Lifeclave';
$data['description'] = 'Highest grade medical equipment manufacturer in Delhi, India & global exporter of hollowares, dental autoclave, dental UV chambers and other medical equipments.';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('index');
$this->load->view('_footer');
}
public function products($offset = 0)
{
$page_number = $this->uri->segment('2');
$total_products = $this->product_model->total_active_products();
if ($page_number) {
$offset = $page_number * 15 - 15;
}
$this->load->library("pagination");
$config['total_rows'] = $total_products;
$config['base_url'] = base_url() . "products";
$config['per_page'] = 15;
$config['use_page_numbers'] = TRUE;
// $config['uri_segment'] = '2';
// $config['full_tag_open'] = '<div class="col-lg-12 col-md-12"><div class="pagination-area text-center">';
// $config['full_tag_close'] = '</div></div>';
// $config['next_link'] = '<i class="bx bx-chevrons-right"></i>';
// $config['prev_link'] = '<i class="bx bx-chevrons-left"></i>';
// $config['next_tag_open'] = '<a href="#" class="next page-numbers">';
// $config['next_tag_close'] = '</a>';
// $config['prev_tag_open'] = '<a href="#" class="prev page-numbers">';
// $config['prev_tag_close'] = '</a>';
// $config['cur_tag_open'] = '<span class="page-numbers current" aria-current="page">';
// $config['cur_tag_close'] = '</span>';
// $config['num_tag_open'] = '<a href="#" class="page-numbers">';
// $config['num_tag_close'] = '</a>';
$config['full_tag_open'] = '<div class="pagination-area text-center"><ul class="pagination">';
$config['full_tag_close'] = '</ul></div>';
$config['num_tag_open'] = '<li class="page-item"><span class="page-link">';
$config['num_tag_close'] = '</span></li>';
$config['cur_tag_open'] = '<li class="page-item active"><a class="page-link" href="#">';
$config['cur_tag_close'] = '</a></li>';
$config['prev_tag_open'] = '<li class="page-item"><span class="page-link">';
$config['prev_tag_close'] = '</span></li>';
$config['next_tag_open'] = '<li class="page-item"><span class="page-link">';
$config['next_tag_close'] = '</span></li>';
$config['prev_link'] = '<i class="bx bx-chevrons-left"></i>';
$config['next_link'] = '<i class="bx bx-chevrons-right"></i>';
$config['last_tag_open'] = '<li class="page-item"><span class="page-link">';
$config['last_tag_close'] = '</span></li>';
$config['first_tag_open'] = '<li class="page-item"><span class="page-link">';
$config['first_tag_close'] = '</span></li>';
$this->pagination->initialize($config);
$query = $this->product_model->get_home_products(15, $offset);
$data['products'] = null;
$data['product_count'] = $total_products;
if ($offset == 0) {
$data['product_start'] = 1;
$data['product_end'] = 15;
} else {
$data['product_start'] = $offset + 1;
$product_end = $offset + 15;
if ($product_end > $total_products) {
$data['product_end'] = $total_products;
} else {
$data['product_end'] = $product_end;
}
}
$data['links'] = $this->pagination->create_links();
if ($query) {
$data['products'] = $query;
}
$data['title'] = 'Products';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('products');
$this->load->view('_footer');
}
public function view_category($category_id, $slug)
{
$data['page'] = 'category';
$data['category'] = $this->general_model->get_by_where('categories', 'id', $category_id);
$data['products'] = $this->product_model->get_all_category_products_novariants($category_id);
// $data['title'] = 'View Products - ' . $data['category']->category_name;
foreach ($data['products'] as $key => $p) {
if ($p['product_has_variants'] == '1') {
if ($p['id'] == $p['product_parent_id'] && $p['product_id'] == $p['id']) {
//keep
} else {
// remove
unset($data['products'][$key]);
}
}
}
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('products_by_category');
$this->load->view('_footer');
}
public function view_product($id, $slug)
{
$data['page'] = 'product';
$data['product'] = $this->product_model->get_all_product_details($id);
// $data['title'] = 'View Product - ' . $data['product']->product_name;
$data['related_products'] = $this->product_model->get_related_products($data['product']->category_id, $id);
if ($data['product']->product_has_gallery == 1) {
$data['product_gallery'] = $this->general_model->get_all_where('product_images', 'product_id', $id);
}
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('product_single');
$this->load->view('_footer');
}
public function ajax_load_quick_view()
{
if (!$this->input->post()) {
show_404();
}
$product_id = $this->input->post('product_id');
$result = $this->product_model->get_all_product_details($product_id);
if ($result) {
$response = '<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true"><i class="bx bx-x"></i></span>
</button>
<div class="row align-items-center">
<div class="col-lg-6 col-md-6">
<div class="products-image">
<img src="' . base_url() . 'assets/images/products/' . $result->product_image . '" alt="image">
</div>
</div>
<div class="col-lg-6 col-md-6">
<div class="products-content">
<h3><a href="' . base_url() . 'product/' . $result->id . '/' . $result->product_slug . '">' . $result->product_name . '</a></h3>
<ul class="products-info">
<li><span>Availability:</span> <a href="#">In stock </a></li>
<li><span>Products Type:</span> <a href="' . base_url() . 'category/' . $result->category_id . '/' . $result->category_slug . '">' . $result->category_name . '</a></li>
</ul>';
if ($result->product_has_variants == 1) :
$product_parent = get_product_variant_parent($result->id);
$variants = get_product_variants($result->id, $product_parent->product_parent_id);
$response .= '<div class="products-size-wrapper"><span>Variants:</span><ul>';
if ($variants) :
foreach ($variants as $variant) :
$response .= '<li class=';
if ($variant['product_id'] == $result->id) :
$response .= '"active"' . '><a href="' . base_url() . 'product/' . $variant["product_id"] . '/' . $variant["product_slug"] . '">' . $variant["product_variant_name"] . '</a></li>';
else :
$response .= '" "' . '><a href="' . base_url() . 'product/' . $variant["product_id"] . '/' . $variant["product_slug"] . '">' . $variant["product_variant_name"] . '</a></li>';
endif;
endforeach;
endif;
$response .= '</ul></div>';
endif;
$response .= '<div class="products-add-to-cart"><button type="submit" class="default-btn"> Buy Now</button></div><a href="' . base_url() . 'product/' . $result->id . '/' . $result->product_slug . '" class="view-full-info">or View Full Info</a></div></div></div>';
echo $response;
} else {
echo json_encode(array('response' => 0), JSON_UNESCAPED_UNICODE);
}
}
// Static Functions
public function about()
{
$data['page'] = 'about';
$data['title'] = 'Reliable supplier & exporter of medical equipments- Lifeclave';
$data['description'] = 'Lifeclave is providing the highest grade medical equipment around the globe in various categories. We are the global manufacturer and exporter.';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('about');
$this->load->view('_footer');
}
public function categories()
{
$data['page'] = 'categories';
$data['title'] = 'Medical Equipment categories manufactured by Lifeclave';
$data['description'] = 'Categories of all the high grade medical equipments manufactured and exported by the lifeclave in delhi,India.';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('categories');
$this->load->view('_footer');
}
public function certificate()
{
$data['page'] = 'certificate';
$data['title'] = 'Certified medical equipments manufacturer & supplier- Lifeclave';
$data['description'] = 'Being the reliable & highest grade supplier, we are also globally certified for the supplying & manufacturing the medical equipments such as hollowares, dental autoclave etc.';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('certificate');
$this->load->view('_footer');
}
public function faq()
{
$data['page'] = 'faq';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('faq');
$this->load->view('_footer');
}
public function termsandconditions()
{
$data['page'] = 'termsandconditions';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('termsandconditions');
$this->load->view('_footer');
}
public function privacypolicy()
{
$data['page'] = 'privacypolicy';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('privacypolicy');
$this->load->view('_footer');
}
public function returnpolicy()
{
$data['page'] = 'returnpolicy';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('returnpolicy');
$this->load->view('_footer');
}
public function contact()
{
$this->load->helper('captcha');
// Captcha configuration
$config = array(
'img_path' => './assets/images/captcha_images/',
'img_url' => base_url() . 'assets/images/captcha_images/',
'font_path' => 'system/fonts/texb.ttf',
'img_width' => '160',
'img_height' => 50,
'word_length' => 8,
'font_size' => 18
);
$captcha = create_captcha($config);
// Unset previous captcha and set new captcha word
$this->session->unset_userdata('captchaCode');
$this->session->set_userdata('captchaCode', $captcha['word']);
// Pass captcha image to view
$data['captchaImg'] = $captcha['image'];
$data['page'] = 'contact';
$data['title'] = 'Contact for highest grade medical equipments supply-Lifeclave';
$data['description'] = 'Get in touch with the customer care or our technical experts to help you through placing an order and getting shipped around the globe.';
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('contact');
$this->load->view('_footer');
}
public function refresh_captcha()
{
$this->load->helper('captcha');
// Captcha configuration
$config = array(
'img_path' => './assets/images/captcha_images/',
'img_url' => base_url() . 'assets/images/captcha_images/',
'font_path' => 'system/fonts/texb.ttf',
'img_width' => '160',
'img_height' => 50,
'word_length' => 8,
'font_size' => 18
);
$captcha = create_captcha($config);
// Unset previous captcha and set new captcha word
$this->session->unset_userdata('captchaCode');
$this->session->set_userdata('captchaCode', $captcha['word']);
// Display captcha image
echo $captcha['image'];
}
public function contact_request()
{
if (!$this->input->post()) {
show_404();
}
$this->form_validation->set_rules('contact_name', 'Full Name', 'trim|required|xss_clean');
$this->form_validation->set_rules('contact_email', 'Email Address', 'trim|required|xss_clean|valid_email');
// $this->form_validation->set_rules('contact_subject', 'Message Subject', 'trim|required|xss_clean');
$this->form_validation->set_rules('contact_mobile', 'Mobile Number', 'trim|required|xss_clean');
$this->form_validation->set_rules('contact_message', 'Message', 'trim|required|xss_clean');
$this->form_validation->set_rules('captcha', 'Captcha', 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$validation_data = array(
'validation_errors' => validation_errors(),
);
$this->session->set_userdata($validation_data);
$this->session->mark_as_flash('validation_errors');
redirect($this->session->redirect_link);
} else {
// If captcha form is submitted
$inputCaptcha = $this->input->post('captcha');
$sessCaptcha = $this->session->userdata('captchaCode');
if ($inputCaptcha === $sessCaptcha) {
// Save Form
$message_data = array(
'query_name' => $this->input->post('contact_name'),
'query_email' => $this->input->post('contact_email'),
'query_mobile' => $this->input->post('contact_mobile'),
// 'query_subject' => $this->input->post('contact_subject'),
'query_message' => $this->input->post('contact_message'),
'query_is_read' => '0',
'query_received_on' => date('Y-m-d H:i:s'),
'query_read_on' => date('Y-m-d H:i:s'),
);
if ($this->general_model->insert_request('contact_queries', $message_data)) {
$flash_data = array(
'message' => 'Message Sent Successfully.',
);
$this->session->set_userdata($flash_data);
$this->session->mark_as_flash('message');
redirect($this->session->redirect_link);
} else {
$flash_data = array(
'error' => 'Unable to send message. Try after some time.',
);
$this->session->set_userdata($flash_data);
$this->session->mark_as_flash('error');
redirect($this->session->redirect_link);
}
} else {
$flash_data = array(
'error' => 'Captcha code does not match, please try again.',
);
$this->session->set_userdata($flash_data);
$this->session->mark_as_flash('error');
redirect($this->session->redirect_link);
}
}
}
public function callback_request()
{
if (!$this->input->post()) {
show_404();
}
$this->form_validation->set_rules('callback_value', 'Email/Mobile', 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
$validation_data = array(
'validation_errors' => validation_errors(),
);
$this->session->set_userdata($validation_data);
$this->session->mark_as_flash('validation_errors');
redirect($this->session->redirect_link);
} else {
// Save Form
$message_data = array(
'callback_value' => $this->input->post('callback_value'),
'callback_is_read' => '0',
'callback_is_done' => '0',
'callback_received_on' => date('Y-m-d H:i:s'),
'callback_read_on' => date('Y-m-d H:i:s'),
'callback_done_on' => date('Y-m-d H:i:s'),
);
if ($this->general_model->insert_request('contact_callbacks', $message_data)) {
$flash_data = array(
'message' => 'Thank You We Will Contact You Shortly.',
);
$this->session->set_userdata($flash_data);
$this->session->mark_as_flash('message');
redirect($this->session->redirect_link);
} else {
$flash_data = array(
'error' => 'Unable to send message. Try after some time.',
);
$this->session->set_userdata($flash_data);
$this->session->mark_as_flash('error');
redirect($this->session->redirect_link);
}
}
}
public function main_search()
{
if (!$this->input->post()) {
redirect(base_url());
}
$keyword = $this->input->post('search_keyword');
$result = $this->product_model->main_search($keyword);
$data['page'] = 'search';
$data['title'] = 'Search';
$data['search_results'] = $result;
$this->load->view('_header', $data);
$this->load->view('_top_header');
$this->load->view('_navbar');
$this->load->view('search');
$this->load->view('_footer');
}
}