ACC SHELL
<?php
/*
* Sablona pro view akcni-zbozi
*/
?>
<div <?php echo CLASS_OBSAH; ?>>
<?php
$Katalog = new Katalog();
include_once(ROOT . '/template/navigace/drobeckova_navigace.php');
include(ROOT . '/template/messages.php');
echo '<h1>' . $SEO_NAZEV . '</h1>';
echo '<div class="clear"></div>';
if (!empty($OBSAH_SABLONY)) {
echo '<p>' . $OBSAH_SABLONY . '</p>';
}
$url = parse_url($_SERVER['REQUEST_URI']);
if (isset($url['query'])) {
parse_str($url['query'], $params);
} else {
$params['nazev'] = false;
}
//ndebugger::dump($url);ndebugger::dump($params);
//unset($params['sh']);
//Pokud mam nastavene sortovani podle nazev, tak podrzet
$orderByNazevAsc = 'ord-top';
$orderByNazevDesc = 'ord-bottom';
$orderByHodnoceniAsc = 'ord-top';
$orderByHodnoceniDesc = 'ord-bottom';
$orderByCenaAsc = 'ord-top';
$orderByCenaDesc = 'ord-bottom';
if (!isset($params['sh'])) {
$params['sh'] = 'desc';
}
if (array_key_exists('seradit', $params)) {
switch ($params['seradit']) {
case 'nazev':
$orderByNazevAsc .= $params['sh'] == 'asc' ? '-active' : false;
$orderByNazevDesc .= $params['sh'] == 'desc' ? '-active' : false;
break;
case 'hodnoceni':
$orderByHodnoceniAsc .= $params['sh'] == 'asc' ? '-active' : false;
$orderByHodnoceniDesc .= $params['sh'] == 'desc' ? '-active' : false;
break;
case 'cena':
$orderByCenaAsc .= $params['sh'] == 'asc' ? '-active' : false;
$orderByCenaDesc .= $params['sh'] == 'desc' ? '-active' : false;
break;
}
}
/**
* Strankovani a defaultni pocet zaznamu na stranku
*/
if (isset($_POST['pocetZaznamuNaStranku'])) {
$_SESSION['pocetZaznamuNaStranku'] = $_POST['pocetZaznamuNaStranku'];
} else {
$_SESSION['pocetZaznamuNaStranku'] = isset($_SESSION['pocetZaznamuNaStranku']) ? $_SESSION['pocetZaznamuNaStranku'] : 50;
}
$Katalog->pagesize = $_SESSION['pocetZaznamuNaStranku'];
?>
<div class="product-list-comp">
<div class="filter">
<div class="col" style="width: 700px;">
<?php
if (isset($Sablona->main_id)) {
echo '<p>Filtrovat dle:</p>';
Query::buildHtmlElementFiltersSablona($Sablona->main_id, $_GET);
}
?>
<div class="clear"></div>
</div>
<div class="clear"></div>
</div>
<ul class="order">
<li>Seřadit dle:</li>
<li>Názvu zboží <a href="?seradit=nazev&sh=desc" title="order" class="<?php echo $orderByNazevDesc; ?>"></a> <a href="?seradit=nazev&sh=asc" title="order" class="<?php echo $orderByNazevAsc; ?>"></a></li>
<li>Ceny <a href="?seradit=cena&sh=desc" title="order" class="<?php echo $orderByCenaDesc; ?>"></a> <a href="?seradit=cena&sh=asc" title="order" class="<?php echo $orderByCenaAsc; ?>"></a></li>
<li>Hodnocení <a href="?seradit=hodnoceni&sh=desc" title="order" class="<?php echo $orderByHodnoceniDesc; ?>"></a> <a href="?seradit=hodnoceni&sh=asc" title="order" class="<?php echo $orderByHodnoceniAsc; ?>"></a></li>
</ul>
<ul class="product-list">
<?php
$par = Query::searchForParamsFromUrl($_GET);
if (isset($par)) {
$count = 0;
$id_produktu = false;
if (!empty($par)) {
foreach ($par as $p) {
if (!empty($p['id_hodnoty_parametru'])) {
if ($count == 0) {
// v prvnim kroku ziskam id
//dibi::test('SELECT distinct(id_produktu) FROM katalog_parametry WHERE id_hodnoty_parametru = %i', $p['id_hodnoty_parametru']);
$ids = dibi::query('SELECT distinct(id_produktu) FROM katalog_parametry WHERE id_hodnoty_parametru = %i', $p['id_hodnoty_parametru'])->fetchAssoc('id_produktu');
//NDebugger::dump($ids);
} else {
/*
dibi::test('
SELECT distinct(id_produktu)
FROM katalog_parametry
WHERE id_produktu in %in', $ids, ' AND id_hodnoty_parametru = %i', $p['id_hodnoty_parametru']);
*/
$ids = dibi::query('
SELECT distinct(id_produktu)
FROM katalog_parametry
WHERE id_produktu in %in', $ids, ' AND id_hodnoty_parametru = %i', $p['id_hodnoty_parametru'])->fetchAssoc('id_produktu');
//NDebugger::dump($ids);
}
$count++;
//$k['ids'][] = $p['id_hodnoty_parametru'];
if (!isset($ids))
$ids[] = 0;
}
}
}
}
//NDebugger::dump($ids);
/*
if (isset($ids)) {
$k['ids'] = $ids;
}
*/
//$all_cat = dibi::query('SELECT id FROM kategorie WHERE lft>=%i', $Sablona->lft, 'AND rgt<=%i', $Sablona->rgt)->fetchAssoc('id');
//$k['id_kategorie'] = $all_cat;
$k['lang'] = LANGUAGE;
if (isset($_GET['seradit'])) {
//$availSort = array('nazev', 'cena','hodnoceni');
$availSort = array('nazev', 'cena', 'hodnoceni');
if (in_array($_GET['seradit'], $availSort)) {
$k['sort'] = $_GET['seradit'];
//sh = sort how (asc, desc)
$k['sort_how'] = isset($_GET['sh']) && $_GET['sh'] == 'desc' ? 'DESC' : 'ASC';
}
}
$k['varianty'] = 0;
$k['musi_mit_varianty'] = true;
//$k['limit'] = $_SESSION['pocetZaznamuNaStranku'];
//Zobrazit vsechno zbozi, novinky nebo akce ..
$k['zobrazitTyp'] = 'akcni';
//NDebugger::dump($_GET);NDebugger::dump($k);
$polozky = $Katalog->fetchAll($k);
$counter = 1;
//NDebugger::dump(count($polozky));exit;
if ($polozky) {
foreach ($polozky as $polozka) {
//NDebugger::dump($polozka);
$obrazek = null;
$foto_big = null;
if ($polozka->obrazek != null && file_exists(ROOT . KATALOG_F_M_PATH . $polozka->obrazek)) {
$obrazek = KATALOG_F_M_PATH . $polozka->obrazek;
$foto_big = KATALOG_F_M_PATH . $polozka->obrazek;
}
$class = $counter % 4 == 0 ? ' class="last-in-row ' . $class . '"' : '';
$odkaz = $polozka->url_kategorie . '/' . $polozka->url . '.html';
$dnesniDatum = $date = date('Y-m-d H:i:s');
$polozka->nazev = html_entity_decode($polozka->nazev);
$cena = money($polozka->akcniZbozi == 'ano' ? $polozka->akcni_cena : $polozka->cena, 0);
?>
<li<?php echo $class; ?>>
<h2><a href="/<?php echo $odkaz; ?>" title="<?php echo $polozka->nazev; ?>"><?php echo $polozka->nazev; ?></a>
<?php
if ($polozka->akcniZbozi == 'ano') {
echo '<span class="dot action">Akce</span>';
}
if ($polozka->novinka == 1) {
echo '<span class="dot new">Novinka</span>';
}
?>
</h2>
<div class="pic">
<?php
if ($foto_big) {
echo '<a href="/' . $odkaz . '" title="' . $polozka->nazev . '"><img src="' . $obrazek . '" alt="' . $polozka->nazev . '" /></a>';
}
?>
<span><?php echo $cena; ?>,- Kč</span>
</div>
<p class="more"><a href="/<?php echo $odkaz; ?>" title="Více informací">Více informací</a></p>
</li>
<?php
$counter++;
}
} else {
echo 'Vašemu filtru vevyhovuje žádná položka';
}
?>
</ul>
<div class="filter">
<div class="col">
<form method="post" name="pocetZaznamu" action="">
<p>Zobrazit:</p>
<select name="pocetZaznamuNaStranku" onChange="this.form.submit();" id="select">
<option value="10" <?php echo $_SESSION['pocetZaznamuNaStranku'] == 10 ? 'selected' : ''; ?>>10</option>
<option value="20" <?php echo $_SESSION['pocetZaznamuNaStranku'] == 20 ? 'selected' : ''; ?>>20</option>
<option value="30" <?php echo $_SESSION['pocetZaznamuNaStranku'] == 30 ? 'selected' : ''; ?>>30</option>
<option value="40" <?php echo $_SESSION['pocetZaznamuNaStranku'] == 40 ? 'selected' : ''; ?>>40</option>
<option value="50" <?php echo $_SESSION['pocetZaznamuNaStranku'] == 50 ? 'selected' : ''; ?>>50</option>
</select>
<input type="hidden" name="url" value="" />
<div class="clear"></div>
</form>
</div>
<div class="col" style="width: 700px;">
<div class="pagination">
<?php
//NDebugger::dump($Katalog);
echo pageLinks($Katalog->totalpages, $Katalog->currentpage, $Katalog->pagesize, "recordstart", "katalog");
?>
</div>
</div>
</div>
</div>
<div class="clear"></div>
</div>
ACC SHELL 2018