ACC SHELL

Path : /srv/www/vhosts/centrumlb/www/template/
File Upload :
Current File : /srv/www/vhosts/centrumlb/www/template/bootstrap.php

<?php

include_once(ROOT . '/administrace/libs/funkcephp.php');
if (isset($_POST['prihlaskaform']))
{
    include_once(ROOT . '/inc/prihlaskaPacienta/prihlaskaPacienta.php');
}
$Kategorie = new Kategorie();
$User = new User();
//NDebugger::dump($_SESSION);
$url = parseUrl(isset($_GET['url']) ? $_GET['url'] : false);
/*
 * kategorie s koncovkou html jsou napred testovany na existenci samotne kategorie
 * az nasledne se hleda detail
 */
if (isset($url['possibleUrl']) && $url['possibleUrl'] !== false)
{
    $testForUrl = dibi::query('SELECT id FROM kategorie_popis WHERE url=%s', $url['possibleUrl'])->fetchSingle();
    if ($testForUrl !== false)
    {
	$url['category'] = $url['possibleUrl'];
	$url['detail'] = false;
    }
}

$page_id = preg_replace("/[^a-zA-Z0-9\/\-]+/", "", html_entity_decode(isset($url['category']) ? $url['category'] : false, ENT_QUOTES));
$detail_id = $url['detail'];
//$page_typ = isset($_GET['typ']) ? $_GET['typ'] : false;
$mustexist = isset($_GET['mustexist']) ? $_GET['mustexist'] : 'true';

$singlePage = array(
    'akcni-zbozi' => 91,
    'zapomenuteheslo' => 92,
    'pokladna' => 93,
    'profil' => 94,
    'wishlist' => 95,
    'search' => 96,
    'registrace' => 97,
    'kosik' => 98,
    'site-map' => 99
);

require_once 'action.php';


//samostatny produkt
if (!empty($url['detail']) && empty($url['category']))
{
    $Sablona = new Kategorie();
    $Sablona->typ = 7;
} else
{
    $Sablona = $Kategorie->getDetail(isset($page_id) ? $page_id : 'index', $_SESSION['jazyk'], 'kategorie');
}

//NDebugger::dump($url);NDebugger::dump($detail_id);exit;
$CMS_URL = dibi::query('SELECT DISTINCT(typ), url FROM kategorie_popis WHERE typ IN (2,3,4,5,6,7,8,9) AND lang=%i', LANGUAGE)->fetchPairs('typ', 'url');
$CMS_URL['fotogalerie'] = isset($CMS_URL[2]) ? $CMS_URL[2] : 'galerie';
$CMS_URL['clanky'] = isset($CMS_URL[3]) ? $CMS_URL[3] : 'clanky';
$CMS_URL['novinky'] = isset($CMS_URL[4]) ? $CMS_URL[4] : 'novinky';
$CMS_URL['katalog'] = isset($CMS_URL[7]) ? $CMS_URL[7] : 'katalog';
$CMS_URL[9] = isset($CMS_URL[9]) ? $CMS_URL[9] : false;

if (!isset($CMS_URL[9]) || $CMS_URL[9] == false)
{
    $CMS_URL[9] = dibi::query('SELECT url FROM kategorie_popis WHERE typ = 1 AND kontaktform=1 AND lang=%i', LANGUAGE)->fetchSingle();
}
$URL['ESHOP'] = 'kosik';

if (!$Sablona)
{
    $Sablona = new Kategorie();
    if (key_exists($page_id, $singlePage))
    {
	$Sablona->typ = $singlePage[$page_id];
    } else
    {
	$Sablona->typ = 404;
    }
    switch ($Sablona->typ)
    {
	case '2':
	    $Sablona->typ = '2';
	    $Sablona->seo_nazev = 'Fotogalerie';
	    $Sablona->url = isset($CMS_URL[2]) ? $CMS_URL[2] : 'fotogalerie';
	    break;
	case '3':
	    $Sablona->typ = '3';
	    $Sablona->seo_nazev = 'Články';
	    $Sablona->url = isset($CMS_URL[3]) ? $CMS_URL[3] : 'clanky';
	    break;
	case '4':
	    $Sablona->typ = '4';
	    $Sablona->seo_nazev = 'Novinky';
	    $Sablona->url = isset($CMS_URL[4]) ? $CMS_URL[4] : 'novinky';
	    break;
	case '91':
	    $Sablona->typ = '91';
	    $Sablona->seo_nazev = 'Akční zboží';
	    $Sablona->url = 'akcni-zbozi';
	    break;
	case '92':
	    $Sablona->typ = '92';
	    $Sablona->seo_nazev = 'Zapomenuté heslo';
	    $Sablona->url = 'zapomenuteheslo';
	    break;
	case '93':
	    $Sablona->typ = '93';
	    $Sablona->seo_nazev = 'Pokladna';
	    $Sablona->url = 'pokladna';
	    break;
	case '94':
	    $Sablona->typ = '94';
	    $Sablona->seo_nazev = 'Profil';
	    $Sablona->url = 'profil';
	    break;
	case '95':
	    $Sablona->typ = '95';
	    $Sablona->seo_nazev = 'Wishlist';
	    $Sablona->url = 'wishlist';
	    break;
	case '96':
	    $Sablona->typ = '96';
	    $Sablona->seo_nazev = 'Vyhledávání';
	    $Sablona->url = 'search';
	    break;
	case '97':
	    $Sablona->typ = '97';
	    $Sablona->seo_nazev = 'Registrace';
	    $Sablona->url = 'registrace';
	    break;
	case '98':
	    $Sablona->typ = '98';
	    $Sablona->seo_nazev = 'Košík';
	    $Sablona->url = 'kosik';
	    break;
	case '99':
	    $Sablona->typ = '99';
	    $Sablona->seo_nazev = 'Mapa stránek';
	    $Sablona->url = 'site-map';
	    break;
	default:
	    $Sablona->typ = '404';
	    $Sablona->seo_nazev = tr('Stránka nenalezena');
	    break;
    }
}

switch ($Sablona->typ)
{
    case 1:
	$F = new Kategorie();
	$typ = 'kategorie';
	break;
    case 2:
	$F = new Fotogalerie();
	$typ = 'fotogalerie';
	break;
    case 3:
	$F = new Clanky();
	$typ = 'clanky';
	break;
    case 4:
	$F = new Novinky();
	$typ = 'novinky';
	break;
    case 5:
	$F = new Kategorie();
	//$detail_id = 'index';
	$typ = 'kategorie';
    case 6:
	$F = new KnihaNavstev();
	$typ = 'kategorie';
	break;
    case 91:
    case 7:
	$F = new Katalog();
	$typ = 'katalog';
	break;
    case 8:
	$F = new Diskografie();
	$typ = 'diskografie';
	break;
    case 9:
    case 92:
    case 93:
    case 94:
    case 95:
    case 96:
    case 97:
    case 98:
    case 99:
	$F = new Kategorie();
	$typ = 'kategorie';
	break;
    case 404:
	$F = new Kategorie();
	$typ = 'kategorie';
	break;
    default:
	$Sablona = $Kategorie->getDetails('index', $_SESSION['jazyk'], 'kategorie');
	break;
}

if ($detail_id)
{
    if ($Sablona->typ == 7)
    {
	$Detail = $F->fetchSingle($detail_id, LANGUAGE);
	//NDebugger::dump($F->getSkladoveZasoby($Detail->id_produktu));
	if ($F->getSkladoveZasoby($Detail->id_produktu) < 1)
	{
	    //Tools::redirect('404');
	}
    } else
    {
	$Detail = $F->getDetail($detail_id, $_SESSION['jazyk'], $typ);
    }
    if (!$Detail)
    {
	Tools::message('Hledaný produkt neexistuje', 'error');
	Tools::redirect('/' . $url['category']);
    }

    if (isset($Detail->id_popisu))
    {
	Query::setNavstevnost($Detail->id_popisu, $typ);
    }
} else
{
    if (!empty($Sablona->idPopisu))
    {
	Query::setNavstevnost($Sablona->idPopisu, 'kategorie');
    }
}

$Settings = new Settings();
$nastaveni = $Settings->getSettings();

$Texty = new Texty();
$globalni_text = $Texty->fetchAll();
//NDebugger::dump($globalni_text);
$globalText['Zapati'] = isset($globalni_text[1]->obsah) ? html_entity_decode($globalni_text[1]->obsah) : null;
$globalText['OrdinacniDoba'] = isset($globalni_text[2]->obsah) ? html_entity_decode($globalni_text[2]->obsah) : null;
$globalText['DomaciHospic'] = isset($globalni_text[3]->obsah) ? html_entity_decode($globalni_text[3]->obsah) : null;
$globalText['KdeNasNajdete'] = isset($globalni_text[4]->obsah) ? html_entity_decode($globalni_text[4]->obsah) : null;
$globalText['ZakladniNavigace'] = isset($globalni_text[5]->obsah) ? html_entity_decode($globalni_text[5]->obsah) : null;
$globalText['CoNabizime'] = isset($globalni_text[6]->obsah) ? html_entity_decode($globalni_text[6]->obsah) : null;
$globalText['RychlyKontakt'] = isset($globalni_text[7]->obsah) ? html_entity_decode($globalni_text[7]->obsah) : null;
$globalText['KontaktniUdaje'] = isset($globalni_text[8]->obsah) ? $globalni_text[8]->obsah : null;


switch ($_SESSION['jazyk'])
{
    case 1:
	$Sablona->kod = 'cz';
	break;
    case 2:
	$Sablona->kod = 'sk';
	break;
    case 3:
	$Sablona->kod = 'en';
	break;
    case 4:
	$Sablona->kod = 'de';
	break;
    case 5:
	$Sablona->kod = 'ru';
	break;
    case 6:
	$Sablona->kod = 'it';
	break;
    case 7:
	$Sablona->kod = 'fr';
	break;
    case 8:
	$Sablona->kod = 'au';
	break;
    case 9:
	$Sablona->kod = 'pl';
	break;
    default:
	$Sablona->kod = 'cz';
	break;
}
if ($Sablona->kod != 'cz')
{
    include_once(ROOT . '/www/template/translator/' . $Sablona->kod . '.php');
}

if ($Sablona->typ == 7)
{
    if (!empty($Detail->nazev))
    {
	$description = !empty($Detail->description) ? $Detail->description : (!empty($nastaveni['description']->hodnota) ? $nastaveni['description']->hodnota : false);
	$keywords = !empty($Detail->keywords) ? $Detail->keywords : (!empty($nastaveni['keywords']->hodnota) ? $nastaveni['keywords']->hodnota : false);
	if (!empty($Sablona->seo_nazev))
	{
	    $title = !empty($nastaveni['title']->hodnota) ? $Detail->nazev . ' - ' . $Sablona->seo_nazev . ' - ' . $nastaveni['title']->hodnota : $Detail->nazev . ' - ' . $Sablona->seo_nazev;
	} else
	{
	    $title = !empty($nastaveni['title']->hodnota) ? $Detail->nazev . ' - ' . $nastaveni['title']->hodnota : $Detail->nazev;
	}
    } else
    {
	$description = !empty($Sablona->description) ? $Sablona->description : (!empty($nastaveni['description']->hodnota) ? $nastaveni['description']->hodnota : false);
	$keywords = !empty($Sablona->keywords) ? $Sablona->keywords : (!empty($nastaveni['keywords']->hodnota) ? $nastaveni['keywords']->hodnota : false);
	$title = !empty($nastaveni['title']->hodnota) ? $Sablona->seo_nazev . ' - ' . $nastaveni['title']->hodnota : $Sablona->seo_nazev;
    }
} else
{
    if (!empty($Detail->seo_nazev))
    {
	$description = !empty($Detail->description) ? $Detail->description : (!empty($nastaveni['description']->hodnota) ? $nastaveni['description']->hodnota : false);
	$keywords = !empty($Detail->keywords) ? $Detail->keywords : (!empty($nastaveni['keywords']->hodnota) ? $nastaveni['keywords']->hodnota : false);
	$title = !empty($nastaveni['title']->hodnota) ? $Detail->seo_nazev . ' - ' . $nastaveni['title']->hodnota : $Detail->seo_nazev;
    } else
    {
	$description = !empty($Sablona->description) ? $Sablona->description : (!empty($nastaveni['description']->hodnota) ? $nastaveni['description']->hodnota : false);
	$keywords = !empty($Sablona->keywords) ? $Sablona->keywords : (!empty($nastaveni['keywords']->hodnota) ? $nastaveni['keywords']->hodnota : false);
	$title = !empty($nastaveni['title']->hodnota) ? $Sablona->seo_nazev . ' - ' . $nastaveni['title']->hodnota : $Sablona->seo_nazev;
    }
}

if ($detail_id)
{
    $SEO_NAZEV = !empty($Detail->seo_nazev) ? $Detail->seo_nazev : $Detail->nazev;
    $OBSAH_SABLONY = !empty($Detail->obsah) ? $Detail->obsah : PRAZDNY_OBSAH_KATEGORIE;
} else
{
    $SEO_NAZEV = !empty($Sablona->seo_nazev) ? $Sablona->seo_nazev : $Sablona->nazev;
    $OBSAH_SABLONY = !empty($Sablona->obsah) ? $Sablona->obsah : PRAZDNY_OBSAH_KATEGORIE;
}

define('INDEX', $Sablona->idKategorie == 1 ? true : false);

if (isset($Sablona) && $Sablona->typ == 7)
{
    $_SESSION['test'] = false;
}

$navigace = $Kategorie->getNavigaceHorni($page_id, 2);
$navigaceBocni = $Kategorie->getNavigaceHorni($page_id, 3);
//NDebugger::dump($navigaceBocni);exit;

ACC SHELL 2018