Files
shopPRO/autoload/admin/factory/class.Layouts.php

79 lines
1.7 KiB
PHP

<?php
namespace admin\factory;
use Domain\Layouts\LayoutsRepository;
class Layouts
{
public static function layout_delete($layout_id)
{
return self::repository()->delete((int)$layout_id);
}
public static function layout_details($layout_id)
{
return self::repository()->find((int)$layout_id);
}
public static function layout_save(
$layout_id,
$name,
$status,
$pages,
$html,
$css,
$js,
$m_html,
$m_css,
$m_js,
$categories,
$categories_default
) {
return self::repository()->save([
'id' => $layout_id,
'name' => $name,
'status' => $status,
'pages' => $pages,
'html' => $html,
'css' => $css,
'js' => $js,
'm_html' => $m_html,
'm_css' => $m_css,
'm_js' => $m_js,
'categories' => $categories,
'categories_default' => $categories_default,
]);
}
public static function menus_list()
{
$menus = \admin\factory\Pages::menus_list();
if (!is_array($menus)) {
return [];
}
foreach ($menus as $key => $menu) {
$menuId = (int)($menu['id'] ?? 0);
if ($menuId <= 0) {
continue;
}
$menus[$key]['pages'] = \admin\factory\Pages::menu_pages($menuId);
}
return $menus;
}
public static function layouts_list()
{
return self::repository()->listAll();
}
private static function repository(): LayoutsRepository
{
global $mdb;
return new LayoutsRepository($mdb);
}
}