ver. 0.289: ShopCategory + ShopClient frontend migration to Domain + Views + Controllers

ShopCategory: 9 frontend methods in CategoryRepository, front\Views\ShopCategory (3 methods),
deleted factory + view, updated 6 callers, +17 tests.

ShopClient: 13 frontend methods in ClientRepository, front\Views\ShopClient (8 methods),
front\Controllers\ShopClientController (15 methods + buildEmailBody helper),
deleted factory + view + controls, updated 7 callers, +36 tests.

Security fix: removed hardcoded password bypass 'Legia1916'.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-17 10:41:40 +01:00
parent 25348797da
commit e671142cee
34 changed files with 2049 additions and 961 deletions

View File

@@ -1,56 +0,0 @@
<?php
namespace front\view;
class ShopCategory
{
static public function category_description( $category )
{
return \Shared\Tpl\Tpl::view( 'shop-category/category-description', [
'category' => $category
] );
}
static public function category_view( $category, $lang_id, $bs = 1 )
{
global $settings, $page;
if ( !$settings['infinitescroll'] )
{
$results = \front\factory\ShopCategory::category_products( $category, $lang_id, $bs );
if ( $results['ls'] > 1 )
{
$tpl = new \Shared\Tpl\Tpl;
$tpl -> ls = $results['ls'];
$tpl -> bs = $bs ? $bs : 1;
$tpl -> page = $page;
$tpl -> link = $category['language']['seo_link'] ? $url = $category['language']['seo_link'] : $url = 'k-' . $category['id'] . '-' . \Shared\Helpers\Helpers::seo( $category['language']['title'] );
$pager = $tpl -> render( 'site/pager' );
}
return \Shared\Tpl\Tpl::view( 'shop-category/category', [
'category' => $category,
'products' => $results['products'],
'pager' => $pager,
'category_description' => (int)$bs <= 1 ? true : false,
'category_additional_text' => true
] );
}
$products_count = \front\factory\ShopCategory::category_products_count( $category, $lang_id );
return \Shared\Tpl\Tpl::view( 'shop-category/category-infinitescroll', [
'category' => $category,
'products_count' => $products_count,
'category_description' => (int)$bs <= 1 ? true : false,
'category_additional_text' => true
] );
}
public static function categories( $categories, $current_category = 0, $level = 0 )
{
$tpl = new \Shared\Tpl\Tpl;
$tpl -> level = $level;
$tpl -> current_category = $current_category;
$tpl -> categories = $categories;
return $tpl -> render( 'shop-category/categories' );
}
}

View File

@@ -1,65 +0,0 @@
<?php
namespace front\view;
class ShopClient
{
public static function address_edit( $values )
{
$tpl = new \Shared\Tpl\Tpl;
if ( is_array( $values ) ) foreach ( $values as $key => $val )
$tpl -> $key = $val;
return $tpl -> render( 'shop-client/address-edit' );
}
public static function client_addresses( $values )
{
$tpl = new \Shared\Tpl\Tpl;
if ( is_array( $values ) ) foreach ( $values as $key => $val )
$tpl -> $key = $val;
return $tpl -> render( 'shop-client/client-addresses' );
}
public static function client_menu( $values )
{
$tpl = new \Shared\Tpl\Tpl;
if ( is_array( $values ) ) foreach ( $values as $key => $val )
$tpl -> $key = $val;
return $tpl -> render( 'shop-client/client-menu' );
}
public static function client_orders( $values )
{
$tpl = new \Shared\Tpl\Tpl;
if ( is_array( $values ) ) foreach ( $values as $key => $val )
$tpl -> $key = $val;
return $tpl -> render( 'shop-client/client-orders' );
}
public static function recover_password()
{
$tpl = new \Shared\Tpl\Tpl;
return $tpl -> render( 'shop-client/recover-password' );
}
public static function mini_login()
{
global $client;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> client = $client;
return $tpl -> render( 'shop-client/mini-login' );
}
public static function login_form( $values = '' )
{
$tpl = new \Shared\Tpl\Tpl;
if ( is_array( $values ) ) foreach ( $values as $key => $val )
$tpl -> $key = $val;
return $tpl -> render( 'shop-client/login-form' );
}
public static function register_form()
{
$tpl = new \Shared\Tpl\Tpl;
return $tpl -> render( 'shop-client/register-form' );
}
}

View File

@@ -27,6 +27,7 @@ class Site
$layoutsRepo = new \Domain\Layouts\LayoutsRepository( $GLOBALS['mdb'] );
$pagesRepo = new \Domain\Pages\PagesRepository( $GLOBALS['mdb'] );
$scontainersRepo = new \Domain\Scontainers\ScontainersRepository( $GLOBALS['mdb'] );
$categoryRepo = new \Domain\Category\CategoryRepository( $GLOBALS['mdb'] );
if ( (int) \Shared\Helpers\Helpers::get( 'layout_id' ) )
$layout = $layoutsRepo->find( (int) \Shared\Helpers\Helpers::get( 'layout_id' ) );
@@ -66,7 +67,7 @@ class Site
$html = str_replace( '[KATEGORIE]', \Shared\Tpl\Tpl::view( 'shop-category/categories', [
'level' => $level,
'current_category' => \Shared\Helpers\Helpers::get( 'category' ),
'categories' => \front\factory\ShopCategory::categories_details()
'categories' => $categoryRepo->categoriesTree( $lang_id )
] ), $html );
/* BOX - promowane produkty */
@@ -112,7 +113,7 @@ class Site
\front\Views\Newsletter::render(),
$html );
$html = str_replace( '[UZYTKOWNIK_MINI_LOGOWANIE]',
\front\view\ShopClient::mini_login(),
\front\Views\ShopClient::miniLogin(),
$html );
$html = str_replace( '[CSS]', $layout['css'], $html );
@@ -150,7 +151,7 @@ class Site
//
if ( \Shared\Helpers\Helpers::get( 'category' ) )
{
$category = \front\factory\ShopCategory::category_details( \Shared\Helpers\Helpers::get( 'category' ) );
$category = $categoryRepo->frontCategoryDetails( (int)\Shared\Helpers\Helpers::get( 'category' ), $lang_id );
if ( $category['language']['meta_title'] )
$page['language']['title'] = $category['language']['meta_title'];
@@ -381,7 +382,7 @@ class Site
$html = str_replace(
$pattern,
\Shared\Tpl\Tpl::view( 'shop-category/blog-category-products', [
'products' => \front\factory\ShopCategory::blog_category_products( $category_list_tmp[1], $lang_id, $products_limit )
'products' => $categoryRepo->blogCategoryProducts( (int)$category_list_tmp[1], $lang_id, (int)$products_limit )
] ),
$html );
}