- Created Articles.php for rendering article views including full articles, miniature lists, and news sections. - Added Banners.php for handling banner displays. - Introduced Languages.php for rendering language options. - Implemented Menu.php for dynamic menu rendering. - Developed Newsletter.php for newsletter view rendering. - Created Scontainers.php for rendering specific containers. - Added ShopCategory.php for category descriptions and product listings. - Introduced ShopClient.php for managing client-related views such as address editing and order history. - Implemented ShopPaymentMethod.php for displaying payment methods in the basket. - Created ShopProduct.php for generating product URLs. - Added ShopSearch.php for rendering a simple search form. - Added .htaccess file to enhance security by restricting access to sensitive files and directories.
32 lines
1.2 KiB
PHP
32 lines
1.2 KiB
PHP
<?php
|
|
namespace admin\Controllers;
|
|
|
|
use Domain\Dashboard\DashboardRepository;
|
|
use Domain\ShopStatus\ShopStatusRepository;
|
|
|
|
class DashboardController
|
|
{
|
|
private DashboardRepository $repository;
|
|
private ShopStatusRepository $statusesRepository;
|
|
|
|
public function __construct( DashboardRepository $repository, ShopStatusRepository $statusesRepository )
|
|
{
|
|
$this->repository = $repository;
|
|
$this->statusesRepository = $statusesRepository;
|
|
}
|
|
|
|
public function main_view(): string
|
|
{
|
|
return \Shared\Tpl\Tpl::view( 'dashboard/main-view', [
|
|
'last_orders' => $this->repository->lastOrders(),
|
|
'order_statuses' => $this->statusesRepository->allStatuses(),
|
|
'sales' => $this->repository->last24MonthsSales(),
|
|
'best_sales_products' => $this->repository->bestSalesProducts(),
|
|
'most_view_products' => $this->repository->mostViewedProducts(),
|
|
'sales_grid' => $this->repository->salesGrid(),
|
|
'summary_sales' => $this->repository->summarySales(),
|
|
'summary_orders' => $this->repository->summaryOrders(),
|
|
] );
|
|
}
|
|
}
|