%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
<?php
/*
* @Author: Sharda Tech
* Website: http://www.shardatech.org
*/
class MY_Controller extends MX_Controller
{
public $nonDynPages = array();
private $dynPages = array();
//protected $template;
public function __construct()
{
parent::__construct();
$this->getActivePages();
//$this->checkForPostRequests();
$this->setReferrer();
//set selected template
//$this->loadTemplate();
}
/*
* Render page from controller
* it loads header and footer auto
*/
public function render($view, $head, $data = null, $footer = null)
{
//$head['cartItems'] = $this->shoppingcart->getCartItems();
//$head['sumOfItems'] = $this->shoppingcart->sumValues;
$vars = $this->loadVars();
$this->load->vars($vars);
$all_categories = array(); // $this->Public_model->getShopCategories();
function buildTree1(array $elements, $parentId = 0)
{
$branch = array();
foreach ($elements as $element) {
if ($element['sub_for'] == $parentId) {
$children = buildTree1($elements, $element['id']);
if ($children) {
$element['children'] = $children;
}
$branch[] = $element;
}
}
return $branch;
}
$head['nav_categories'] = $tree = buildTree1($all_categories);
$this->load->view('_parts/header', $head);
$this->load->view($view, $data);
$this->load->view('_parts/footer', $footer);
}
/*
* Load variables from values-store
* texts, social media links, logos, etc.
*/
private function loadVars()
{
$vars = array();
$vars['nonDynPages'] = $this->nonDynPages;
$vars['dynPages'] = $this->dynPages;
// $vars['footerCategories'] = $this->Public_model->getFooterCategories();
$vars['sitelogo'] = $this->Public_model->getValueStore('sitelogo');
$vars['sitelogo_two'] = $this->Public_model->getValueStore('sitelogo_two');
$vars['naviText'] = htmlentities($this->Public_model->getValueStore('navitext'));
$vars['footerCopyright'] = htmlentities($this->Public_model->getValueStore('footercopyright'));
$vars['contactsPage'] = $this->Public_model->getValueStore('contactspage');
$vars['footerContactAddr'] = htmlentities($this->Public_model->getValueStore('footerContactAddr'));
$vars['footerContactPhone'] = htmlentities($this->Public_model->getValueStore('footerContactPhone'));
$vars['footerContactEmail'] = htmlentities($this->Public_model->getValueStore('footerContactEmail'));
$vars['footerAboutUs'] = $this->Public_model->getValueStore('footerAboutUs');
$vars['footerSocialFacebook'] = $this->Public_model->getValueStore('footerSocialFacebook');
$vars['footerSocialTwitter'] = $this->Public_model->getValueStore('footerSocialTwitter');
$vars['footerSociallinkedin'] = $this->Public_model->getValueStore('footerSociallinkedin');
$vars['footerSocialInstagram'] = $this->Public_model->getValueStore('footerSocialInstagram');
$vars['footerSocialYoutube'] = $this->Public_model->getValueStore('footerSocialYoutube');
$vars['addedJs'] = $this->Public_model->getValueStore('addJs');
$vars['publicQuantity'] = $this->Public_model->getValueStore('publicQuantity');
$vars['moreInfoBtn'] = $this->Public_model->getValueStore('moreInfoBtn');
$vars['multiVendor'] = $this->Public_model->getValueStore('multiVendor');
$vars['allLanguages'] = $this->getAllLangs();
//$vars['load'] = $this->loop;
//$vars['cookieLaw'] = $this->Public_model->getCookieLaw();
// $vars['codeDiscounts'] = $this->Home_admin_model->getValueStore('codeDiscounts');
return $vars;
}
/*
* Get all added languages from administration
*/
private function getAllLangs()
{
$arr = array();
$this->load->model('admin/Languages_model');
$langs = $this->Languages_model->getLanguages();
foreach ($langs->result() as $lang) {
$arr[$lang->abbr]['name'] = $lang->name;
$arr[$lang->abbr]['flag'] = $lang->flag;
}
return $arr;
}
/*
* Active pages for navigation
* Managed from administration
*/
private function getActivePages()
{
$this->load->model('admin/Pages_model');
$activeP = $this->Pages_model->getPages(true);
$dynPages = (array)$this->config->item('no_dynamic_pages');
$actDynPages = [];
foreach ($activeP as $acp) {
if (($key = array_search($acp, $dynPages)) !== false) {
$actDynPages[] = $acp;
}
}
$this->nonDynPages = $actDynPages;
$dynPages = getTextualPages($activeP);
$this->dynPages = $this->Public_model->getDynPagesLangs($dynPages);
}
/*
* Email subscribe form from footer
*/
private function checkForPostRequests()
{
if (isset($_POST['subscribeEmail'])) {
$arr = array();
$arr['browser'] = $_SERVER['HTTP_USER_AGENT'];
$arr['ip'] = $_SERVER['REMOTE_ADDR'];
$arr['time'] = time();
$arr['email'] = $_POST['subscribeEmail'];
if (filter_var($arr['email'], FILTER_VALIDATE_EMAIL) && !$this->session->userdata('email_added')) {
$this->session->set_userdata('email_added', 1);
$res = $this->Public_model->setSubscribe($arr);
$this->session->set_flashdata('emailAdded', lang('email_added'));
}
if (!headers_sent()) {
redirect();
} else {
echo 'window.location = "' . base_url() . '"';
}
}
}
/*
* Set referrer to save it in orders
*/
private function setReferrer()
{
if ($this->session->userdata('referrer') == null) {
if (!isset($_SERVER['HTTP_REFERER'])) {
$ref = 'Direct';
} else {
$ref = $_SERVER['HTTP_REFERER'];
}
$this->session->set_userdata('referrer', $ref);
}
}
/*
* Check for selected template
* and set it in config if exists
*/
// private function loadTemplate()
// {
// $template = $this->Public_model->getValueStore('template');
// if ($template == null) {
// $template = $this->config->item('template');
// } else {
// $this->config->set_item('template', $template);
// }
// if (!is_dir(TEMPLATES_DIR . $template)) {
// show_error('The selected template does not exists!');
// }
// $this->template = 'templates' . DIRECTORY_SEPARATOR . $template . DIRECTORY_SEPARATOR;
// }
}