Complete Domain-Driven Architecture migration: - Phase 1-4: Transport, ProductSet, Coupon, Shop, Search, Basket, ProductCustomField, Category, ProductAttribute, Promotion - Phase 5: Order (~562 lines) + Product (~952 lines) - ~20 Product methods migrated to ProductRepository - Apilo sync migrated to OrderAdminService - Production hotfixes: stale Redis cache (prices 0.00), unqualified Product:: refs in LayoutEngine, object->array template conversion - AttributeRepository::getAttributeValueById() Redis cache added Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
39 lines
1.3 KiB
PHP
39 lines
1.3 KiB
PHP
<? global $lang_id;?>
|
|
<? if ( $this -> query ):?>
|
|
<div class="box-title">
|
|
<?= \Shared\Helpers\Helpers::lang( 'wyniki-wyszukiwania-dla-zapytania' ) . ': <strong>' . $this -> query . '</strong>';?>
|
|
</div>
|
|
<? endif;?>
|
|
<?
|
|
if ( $this -> category_additional_text ):
|
|
echo \Shared\Tpl\Tpl::view( 'shop-category/_partials/category-additional-text', [
|
|
'category' => $this -> category
|
|
] );
|
|
endif;
|
|
?>
|
|
|
|
<?php
|
|
|
|
if ( $this -> category['view_subcategories'] ):
|
|
echo \Shared\Tpl\Tpl::view( 'shop-category/_partials/category-subcategory-tiles', [
|
|
'categories' => ( new \Domain\Category\CategoryRepository( $GLOBALS['mdb'] ) )->subcategoriesLangCached( (int)$this -> category['id'] ),
|
|
] );
|
|
|
|
endif;
|
|
?>
|
|
|
|
<div class="category-content" t='2'>
|
|
<? if ( is_array( $this -> products ) ): foreach ( $this -> products as $product_id ):
|
|
echo \Shared\Tpl\Tpl::view( 'shop-product/product-mini', [
|
|
'product' => (new \Domain\Product\ProductRepository($GLOBALS['mdb']))->findCached( $product_id, $lang_id )
|
|
] );
|
|
endforeach; endif;?>
|
|
</div>
|
|
<?= $this -> pager;?>
|
|
<?
|
|
if ( $this -> category_description ):
|
|
echo \Shared\Tpl\Tpl::view( 'shop-category/category-description', [
|
|
'category' => $this -> category
|
|
] );
|
|
endif;
|
|
?>
|