Překleslení snippetů u starého projektu
- xciza
- Člen | 194
Ahoj,
asi po 5 letech se ke mě dostal projekt, který jsem dělal, že nefunguje
změna kategorií (snippetů). Jde o web: Kamo.cz.
V levém sloupci jsou kategorie a po kliku na každou by se měl obsah překreslit. Bohužel toto už nefunguje a nemohu přijít na to proč. Když si otevřu konzoli a reguest pro změnu kategorie, tak tam vidím data správná, ale už se nepřekreslí obsah. Proto bych chtěl poprosit o radu, čím by to mohlo být?
Díky
Šablona:
{block #content}
<section>
<div class="content catalogue">
<div class="container">
<div class="col-sm-3">
{snippet category}
<div class="navbar-header">
<p class="pull-left">{_'Kategorie'}</p>
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".category-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="category-collapse collapse">
<ul class="nav navbar-nav">
<li {if $catNumber == 0}class="active"{/if}><a n:href="changeCategory! 0" class="ajax">Všechny produkty</a></li>
{foreach $categories as $cat}
<li {if $catNumber == $cat->product_subcategory_id}class="active"{/if}>
<a n:href="changeCategory! $cat->product_subcategory_id" class="ajax">
{$cat->name}
</a>
</li>
{if $cat->name == 'Můj cukr'}
<li>
<a href="http://configurator.kamo.cz:81" target="_blank" class="special">
Vytvořit Můj cukr
<span class="icon-wrapper">
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 60 60" style="enable-background:new 0 0 60 60;" xml:space="preserve">
<path d="M55.1,31.5L14.9,58.9c-0.3,0.2-0.7,0.3-1,0.3c-0.3,0-0.6-0.1-0.9-0.2c-0.6-0.3-1-0.9-1-1.6V2.6c0-0.7,0.4-1.3,1-1.6
c0.6-0.3,1.3-0.3,1.9,0.1l40.2,27.4c0.5,0.3,0.8,0.9,0.8,1.5S55.6,31.2,55.1,31.5z"/>
</svg>
</span>
</a>
</li>
{/if}
{/foreach}
</ul>
</div><!--/.nav-collapse -->
{/snippet}
</div>
<div class="col-sm-8">
{snippet categoryText}
<p class="title">{$catTitle}</p>
<p class="category-text">{$catText|noescape}</p>
{/snippet}
{snippet products}
<div class="category-products">
{foreach $products as $product}
<div class="product">
<a n:href="Product:detail $product->product_id">
<div class="product-image">
<div class="image-cut">
<img src="{$basePath}{$product->thumb}" alt="">
</div>
</div>
</a>
<a n:href="Product:detail $product->product_id"><h4>{$product->title|substr:0:23}{if strlen($product->title) > 23}...{/if}</h4></a>
<div class="product-info">
<p><strong>{$product->subtitle|substr:0:25}{if strlen($product->subtitle) > 25}...{/if}</strong></p>
<p>kód zboží: {$product->code}</p>
</div>
<a href="mailto:oplt@kamo.cz?subject={$product->title}" class="btn btn-lg btn-primary">Poptat tento produkt</a>
</div>
{/foreach}
<div class="clear"></div>
</div>
{/snippet}
</div>
</div><!--/.container-->
</div><!--/.content-->
</section>
Presenter:
<?php
namespace FrontModule;
/**
* Individual Products presenter.
*/
class IndividualProductsPresenter extends BasePresenter {
private $category = 0;
private $categoryTitle = 'Všechny produkty';
private $categoryText = '<p><b>Široká škála výrobků s individuálním klientským potiskem od jednoho výrobce a dodavatele Vám zaručí kompletní a flexibilní servis</b></p>
<p>- výběr toho pravého produktu pro Vás<br/>- jednotné grafické zpracování a sladěnou barevnost<br/>- komunikace a řešení Vašich potřeb a požadavků s jedním partnerem
<br/>- krátké dodací termíny<br/>- bezpečné produkty certifikované společnosti</p>
<p><b>I Vy si můžete snadno dopřát vlastní originalitu a získat svůj jedinečný profesionální detail.</b></p>';
public function renderDefault() {
$this->template->catNumber = $this->category;
$this->template->catTitle = $this->categoryTitle;
$this->template->catText = $this->categoryText;
if ($this->category == 0) {
$this->template->products = $this->model->product->getCategoryProducts(1);
} else {
$this->template->products = $this->model->product->getSubcategoryProducts($this->category);
$category = $this->model->productSubcategory->getSubcategoryForFront($this->category);
$this->template->catTitle = $category->name;
$this->template->catText= $category->text;
}
$this->template->categories = $this->model->product->getIndividualProductsCat(1);
}
public function handleChangeCategory($id) {
if (!$this->presenter->isAjax()) {
$this->presenter->redirect('default');
}
$this->category = $id;
$this->redrawControl('category');
$this->redrawControl('categoryText');
$this->redrawControl('products');
}
}
- stepos2
- Člen | 53
O překreslení se stará javascript. V souboru https://www.kamo.cz/js/main.js je dole zakomentovaný
//$.nette.init();
takže překreslení nemůže fungovat.
Editoval stepos2 (11. 8. 2020 10:42)