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:
66
autoload/front/Views/ShopCategory.php
Normal file
66
autoload/front/Views/ShopCategory.php
Normal file
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
namespace front\Views;
|
||||
|
||||
class ShopCategory
|
||||
{
|
||||
public static function categoryDescription($category): string
|
||||
{
|
||||
return \Shared\Tpl\Tpl::view('shop-category/category-description', [
|
||||
'category' => $category,
|
||||
]);
|
||||
}
|
||||
|
||||
public static function categoryView($category, string $langId, int $currentPage = 1): string
|
||||
{
|
||||
global $settings, $page;
|
||||
|
||||
$categoryRepo = new \Domain\Category\CategoryRepository($GLOBALS['mdb']);
|
||||
|
||||
if (!$settings['infinitescroll']) {
|
||||
$results = $categoryRepo->paginatedCategoryProducts(
|
||||
(int)$category['id'],
|
||||
(int)($category['sort_type'] ?? 0),
|
||||
$langId,
|
||||
$currentPage
|
||||
);
|
||||
|
||||
$pager = '';
|
||||
if ($results['ls'] > 1) {
|
||||
$tpl = new \Shared\Tpl\Tpl;
|
||||
$tpl->ls = $results['ls'];
|
||||
$tpl->bs = $currentPage > 0 ? $currentPage : 1;
|
||||
$tpl->page = $page;
|
||||
$tpl->link = !empty($category['language']['seo_link'])
|
||||
? $category['language']['seo_link']
|
||||
: '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' => $currentPage <= 1,
|
||||
'category_additional_text' => true,
|
||||
]);
|
||||
}
|
||||
|
||||
$productsCount = $categoryRepo->categoryProductsCount((int)$category['id'], $langId);
|
||||
|
||||
return \Shared\Tpl\Tpl::view('shop-category/category-infinitescroll', [
|
||||
'category' => $category,
|
||||
'products_count' => $productsCount,
|
||||
'category_description' => $currentPage <= 1,
|
||||
'category_additional_text' => true,
|
||||
]);
|
||||
}
|
||||
|
||||
public static function categories($categories, $currentCategory = 0, $level = 0): string
|
||||
{
|
||||
$tpl = new \Shared\Tpl\Tpl;
|
||||
$tpl->level = $level;
|
||||
$tpl->current_category = $currentCategory;
|
||||
$tpl->categories = $categories;
|
||||
return $tpl->render('shop-category/categories');
|
||||
}
|
||||
}
|
||||
80
autoload/front/Views/ShopClient.php
Normal file
80
autoload/front/Views/ShopClient.php
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
namespace front\Views;
|
||||
|
||||
class ShopClient
|
||||
{
|
||||
public static function addressEdit($values): string
|
||||
{
|
||||
$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 clientAddresses($values): string
|
||||
{
|
||||
$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 clientMenu($values): string
|
||||
{
|
||||
$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 clientOrders($values): string
|
||||
{
|
||||
$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 recoverPassword(): string
|
||||
{
|
||||
$tpl = new \Shared\Tpl\Tpl;
|
||||
return $tpl->render('shop-client/recover-password');
|
||||
}
|
||||
|
||||
public static function miniLogin(): string
|
||||
{
|
||||
global $client;
|
||||
$tpl = new \Shared\Tpl\Tpl;
|
||||
$tpl->client = $client;
|
||||
return $tpl->render('shop-client/mini-login');
|
||||
}
|
||||
|
||||
public static function loginForm($values = ''): string
|
||||
{
|
||||
$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 registerForm(): string
|
||||
{
|
||||
$tpl = new \Shared\Tpl\Tpl;
|
||||
return $tpl->render('shop-client/register-form');
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user