Compare commits

..

2 Commits

Author SHA1 Message Date
caef156a05 marketing/coupon 2024-01-31 10:38:38 +07:00
88e4ec4a28 update 31/01 2024-01-31 09:34:00 +07:00
10 changed files with 372 additions and 103 deletions

View File

@@ -39,6 +39,19 @@ input[type=number] {
-moz-appearance: textfield;
}
input[type=date]::-webkit-calendar-picker-indicator {
background: transparent;
bottom: 0;
color: transparent;
cursor: pointer;
height: auto;
left: 0;
position: absolute;
right: 0;
top: 0;
width: auto;
}
body {
color: #000;
font-family: "Inter", sans-serif;
@@ -353,7 +366,7 @@ a {
height: 41px;
display: none;
}
.admin-menu .item:nth-child(n+13) .sub-menu {
.admin-menu .item:nth-child(n+10) .sub-menu {
top: unset;
}
.admin-menu .sub-menu {
@@ -808,6 +821,14 @@ input[type=radio]:focus:before {
background-position: -145px -82px;
}
.order-detail-page .icon-edit {
border: transparent;
background-color: transparent;
margin: 0;
width: 18px;
height: 18px;
}
.is-close-btn {
background: #ececec !important;
border-radius: 50%;
@@ -859,6 +880,10 @@ input[type=radio]:focus:before {
content: none;
}
.marketing-coupon-page .order-page-table td {
vertical-align: top;
}
.table-brand th {
padding: 7px 5px;
background: #f6f6f6;

File diff suppressed because one or more lines are too long

View File

@@ -32,6 +32,18 @@ input::-webkit-inner-spin-button {
input[type="number"] {
-moz-appearance: textfield;
}
input[type='date']::-webkit-calendar-picker-indicator {
background: transparent;
bottom: 0;
color: transparent;
cursor: pointer;
height: auto;
left: 0;
position: absolute;
right: 0;
top: 0;
width: auto;
}
body {
color: #000;
font-family: "Inter", sans-serif;
@@ -339,7 +351,7 @@ a {
height: 41px;
display: none;
}
&:nth-child(n + 13) {
&:nth-child(n + 10) {
.sub-menu {
top: unset;
}
@@ -826,6 +838,15 @@ input[type="radio"] {
background-position: -145px -82px;
}
}
.order-detail-page{
.icon-edit {
border: transparent;
background-color: transparent;
margin: 0;
width: 18px;
height: 18px;
}
}
.is-close-btn {
background: #ececec !important;
border-radius: 50%;
@@ -876,6 +897,11 @@ input[type="radio"] {
}
}
}
.marketing-coupon-page {
.order-page-table td {
vertical-align: top;
}
}
.table-brand {
th {

View File

@@ -13,6 +13,7 @@ class AppAdmin
protected $current_route_info = [
"module" => 'home',
"view" => 'home',
"url" => '/admin/product'
];
protected $data = [];
@@ -52,10 +53,11 @@ class AppAdmin
}else{
$data = ['file data '. $module_file .' not found!'];
}
$global_data = [
"module" => $this->current_route_info['module'],
"view" => $this->current_route_info['view'],
"view" => $this->current_route_info['view'],
"url" => $this->current_route_info['url'],
"main_menu" => include_once ROOT_DIR."/data/menu.php",
];

View File

@@ -17,14 +17,16 @@ class Router {
// url: admin/abc/product.php?para1=value1
public function getRouting() {
$parsed = Url::parse($_SERVER['REQUEST_URI']); //abc/product?param1=12&param2=value2
// print_r($parsed);
// home
if($parsed['path'] == '/') {
return [
'module' => preg_replace("/[^a-z0-9_\-]/i","", getRequest('module', 'home')),
'view' => preg_replace("/[^a-z0-9_\-]/i","", getRequest('view', 'home')),
'view_id' => 0,
'view_id'=> 0,
'query' => $parsed['query'],
'url' => $parsed['path'],
];
}
@@ -58,6 +60,7 @@ class Router {
'view' => preg_replace("/[^a-z0-9_\-]/i","", $view ) ,
'view_id' => preg_replace("/[^a-z0-9_]/i","", $view_id ),
'query' => $parsed['query'],
'url' => $parsed['path'],
];
}

View File

@@ -1 +1,217 @@
template/marketing/coupon-add.html
<div class="global-breadcrumb-container">
<a href="/admin/marketing/coupon"> Phiếu giảm giá - Voucher </a>
<a href=""> Form thêm / sửa coupon </a>
</div>
<div class="max-w-[1141px] m-auto">
<div class="text-right m-[0_0_12px]">
<a href="/admin/marketing/coupon-add" class="inline-flex items-center whitespace-nowrap border border-[#0041E8] rounded-[4px] bg-[#F5F7FF] text-[#0041E8] leading-[35px] p-[0_12px] m-[0_10px_0_0] group hover:bg-[#0041E8] hover:text-[#fff]">
<span class="border-[1px] border-[#0041E8] h-[13px] w-[13px] leading-[10.2px] text-center rounded-[50%] mr-1 group-hover:border-[#fff]">+</span>
<span>Thêm phiếu mới</span>
</a>
<a href="/admin/marketing/coupon" class="inline-flex items-center whitespace-nowrap border border-[#0041E8] rounded-[4px] bg-[#F5F7FF] text-[#0041E8] leading-[35px] p-[0_12px] group hover:bg-[#0041E8] hover:text-[#fff]">
<i class="fas fa-clipboard-list mr-[8px]"></i>
<span>Danh sách</span>
</a>
</div>
<p class="bg-white m-[0_0_16px] text-center rounded-[10px] shadow-[0px_1px_1px_0px_rgba(0,0,0,0.10)] leading-[54px] text-[18px] font-bold">
Cập nhật coupon: Giảm tiền mặt
</p>
<div class="flex flex-wrap items-start m-[16px_0]">
<div class="w-[270px] m-[0_16px_0_0] bg-white rounded-[10px] shadow-[0px_1px_1px_0px_rgba(0,0,0,0.10)] font-[500] leading-[24px] overflow-hidden">
<a href="javascript:void(0)" class="block p-[6px_16px] text-[#919699] hover:text-[#fff] hover:bg-[#0041E8] transition" style="color: #Fff;background: #0041E8;"> Chỉnh sửa </a>
<a href="/admin/marketing/coupon-product?id=8" class="block p-[6px_16px] text-[#919699] hover:text-[#fff] hover:bg-[#0041E8] transition"> Danh sách sản phẩm </a>
</div>
<form method="post" enctype="multipart/form-data" class="order-page-table w-[852px] bg-white p-[20px_16px] rounded-[15px] shadow-[0px_1px_1px_0px_rgba(0,0,0,0.10)] leading-[20px] block">
<input type="hidden" name="info[id]" value="0" />
<table>
<tr>
<td width="215"> Mã số phiếu * </td>
<td>
<input type="text" value="CP220920212" placeholder="Mã số phiếu *" readonly/>
</td>
</tr>
<tr>
<td> Tên phiếu khuyến mại * </td>
<td>
<input type="text" value="Giảm tiền mặt" placeholder="Tên phiếu khuyến mại *" class="w-[100%] h-[36px] p-[0_10px] rounded-[4px] border border-[#D8D8D8] shadow-[0px_2px_4px_0px_rgba(0,0,0,0.10)]"/>
<i class="block text-[#E00000] mt-[7px]">* Phần này sẽ hiển thị trong đơn hàng của khách hàng, do vậy cần viết cụ thể.</i>
</td>
</tr>
<tr>
<td> Mô tả </td>
<td>
<textarea name="info[description]" placeholder="Mô tả" class="w-[100%] h-[76px] p-[4px_10px] rounded-[4px] border border-[#D8D8D8] shadow-[0px_2px_4px_0px_rgba(0,0,0,0.10)]">
Test phiếu giảm giá
</textarea>
<i class="block text-[#E00000] mt-[7px]">Phần này chỉ dành cho admin nắm được cụ thể khuyến mại này làm gì. Khách hàng không nhìn thấy.</i>
</td>
</tr>
<tr>
<td> Phân loại * </td>
<td>
<select name='info[type]' onchange="show_content(this.value)">
<option value='pro' selected>Tặng sản phẩm</option>
<option value='cash'>Tặng tiền mặt</option>
<option value='priceoff'>Giảm giá %</option>
<option value='other'>Khác</option>
</select>
<div id="js-type-pro">
<span> Tên Sản phẩm </span>
<input type="text" name="content_pro" value="" />
</div>
<div id="js-type-cash" style="display:none">
<span> Nhập số tiền </span>
<input type="text" name="content_cash" value="" onkeyup="this.value = writeStringToPrice(this.value)" /> vnd (v.d. 200000, 3000000)
</div>
<div id="js-type-priceoff" style="display:none">
<span> Nhập % giảm giá </span>
<input type="text" name="content_priceoff" value="" />% (v.d. 12, 30)
</div>
</td>
</tr>
<tr>
<td> Thời gian hiệu lực * </td>
<td>
<div class="items-center mb-[7px]" style="display: flex;">
<p style="width: 65px;"> Bắt đầu </p>
<div class="relative m-[0_20px_0_10px]">
<i class="far fa-calendar text-[#7E7E7E] m-[0_5px_0_0] absolute left-[10px] leading-[35px]"></i>
<input type="date" name="from_time_date" value="" placeholder="Từ ngày" class="w-[135px] h-[36px] p-[0_10px_0_30px] rounded-[4px] border border-[#D8D8D8] shadow-[0px_2px_4px_0px_rgba(0,0,0,0.10)]"/>
</div>
<p class="mr-[10px]"> Giờ </p>
<select name='info[from_time_minute]' id='from_time_minute' style="width: 85px;">
<option value="00:00">00:00</option><option value="00:30">00:30</option><option value="01:00">01:00</option><option value="01:30">01:30</option><option value="02:00">02:00</option><option value="02:30">02:30</option><option value="03:00">03:00</option><option value="03:30">03:30</option><option value="04:00">04:00</option><option value="04:30">04:30</option><option value="05:00">05:00</option><option value="05:30">05:30</option><option value="06:00">06:00</option><option value="06:30">06:30</option><option value="07:00">07:00</option><option value="07:30">07:30</option><option value="08:00">08:00</option><option value="08:30">08:30</option><option value="09:00">09:00</option><option value="09:30">09:30</option><option value="10:00">10:00</option><option value="10:30">10:30</option><option value="11:00">11:00</option><option value="11:30">11:30</option><option value="12:00">12:00</option><option value="12:30">12:30</option><option value="13:00">13:00</option><option value="13:30">13:30</option><option value="14:00">14:00</option><option value="14:30">14:30</option><option value="15:00">15:00</option><option value="15:30">15:30</option><option value="16:00">16:00</option><option value="16:30">16:30</option><option value="17:00">17:00</option><option value="17:30">17:30</option><option value="18:00">18:00</option><option value="18:30">18:30</option><option value="19:00">19:00</option><option value="19:30">19:30</option><option value="20:00">20:00</option><option value="20:30">20:30</option><option value="21:00">21:00</option><option value="21:30">21:30</option><option value="22:00">22:00</option><option value="22:30">22:30</option><option value="23:00">23:00</option><option value="23:30">23:30</option>
</select>
</div>
<div class="items-center" style="display: flex;">
<p style="width: 65px;"> Kết thúc </p>
<div class="relative m-[0_20px_0_10px]">
<i class="far fa-calendar text-[#7E7E7E] m-[0_5px_0_0] absolute left-[10px] leading-[35px]"></i>
<input type="date" name="to_time_date" value="" placeholder="Từ ngày" class="w-[135px] h-[36px] p-[0_10px_0_30px] rounded-[4px] border border-[#D8D8D8] shadow-[0px_2px_4px_0px_rgba(0,0,0,0.10)]"/>
</div>
<p class="mr-[10px]"> Giờ </p>
<select name='info[to_time_minute]' id='from_time_minute' style="width: 85px;">
<option value="00:00">00:00</option><option value="00:30">00:30</option><option value="01:00">01:00</option><option value="01:30">01:30</option><option value="02:00">02:00</option><option value="02:30">02:30</option><option value="03:00">03:00</option><option value="03:30">03:30</option><option value="04:00">04:00</option><option value="04:30">04:30</option><option value="05:00">05:00</option><option value="05:30">05:30</option><option value="06:00">06:00</option><option value="06:30">06:30</option><option value="07:00">07:00</option><option value="07:30">07:30</option><option value="08:00">08:00</option><option value="08:30">08:30</option><option value="09:00">09:00</option><option value="09:30">09:30</option><option value="10:00">10:00</option><option value="10:30">10:30</option><option value="11:00">11:00</option><option value="11:30">11:30</option><option value="12:00">12:00</option><option value="12:30">12:30</option><option value="13:00">13:00</option><option value="13:30">13:30</option><option value="14:00">14:00</option><option value="14:30">14:30</option><option value="15:00">15:00</option><option value="15:30">15:30</option><option value="16:00">16:00</option><option value="16:30">16:30</option><option value="17:00">17:00</option><option value="17:30">17:30</option><option value="18:00">18:00</option><option value="18:30">18:30</option><option value="19:00">19:00</option><option value="19:30">19:30</option><option value="20:00">20:00</option><option value="20:30">20:30</option><option value="21:00">21:00</option><option value="21:30">21:30</option><option value="22:00">22:00</option><option value="22:30">22:30</option><option value="23:00">23:00</option><option value="23:30">23:30</option>
</select>
</div>
</td>
</tr>
<tr>
<td> Giá trị đơn hàng tối thiểu </td>
<td>
<input type="text" name="info[valid_order_value]" value="2.000.000"
onkeyup="this.value = writeStringToPrice(this.value)"/>
<span> vnd (để 0 nếu không áp dụng) </span>
</td>
</tr>
<tr>
<td> Giới hạn số lần sử dụng / 1 khách hàng </td>
<td>
<input type="text" name="info[limit_use_per_user]" value="0">
<span> (để 0 nếu không giới hạn số lượng dùng phiếu này trên 1 khách hàng) </span>
</td>
</tr>
<tr>
<td> Áp dụng đồng thời với các mã KM khác </td>
<td>
<label>
<input type="checkbox" name="info[can_use_with_other]" value="1" >
<span> Có cho phép (1 đơn hàng có thể có nhiều voucher) </span>
</label>
</td>
</tr>
<tr>
<td> Hiển thị công khai </td>
<td>
<label>
<input type="checkbox" name="info[show_to_public]"checked >
<span> Cho hiển thị công khai (nếu giao diện web có) </span>
</label>
</td>
</tr>
<tr>
<td> Điều kiện áp dụng </td>
<td>
<label>
<input type="radio" name="info[product_condition]" value="all">
<span> Tất cả các sản phầm </span>
</label>
<label>
<input type="radio" name="info[product_condition]" value="select" checked>
<span> Chỉ một số sản phẩm (* bạn sẽ cần chọn danh sách các sản phẩm)</span>
</label>
</td>
</tr>
<tr>
<td> Số lượng phiếu </td>
<td>
<input type="text" size="10" name="info[total]" value="0">
<span> (để 0 nếu không có giới hạn) </span>
</td>
</tr>
<tr>
<td> Hiển thị </td>
<td>
<label>
<input type="radio" name="info[status]" value="1" >
<span>Cho hiển thị</span>
</label>
<label>
<input type="radio" name="info[status]" value="0" checked >
<span>Ẩn hiển thị</span>
</label>
</td>
</tr>
</table>
<input type="hidden" name="create" value="yes" />
<input name="commit" type="submit" value="Cập nhật" />
</form>
</div>
</div>
<script>
function show_content(ty){
var list_type = ['pro', 'cash', 'priceoff'];
for(var i=0; i < list_type.length; i++){
var t_ty = list_type[i];
if(ty == t_ty) document.getElementById('js-type-'+t_ty).style.display = 'block';
else document.getElementById('js-type-'+t_ty).style.display = 'none';
}
}
</script>

View File

@@ -0,0 +1 @@
coupon-product

View File

@@ -1,4 +1,4 @@
<div class="bg-white m-[16px_0_16px_16px] p-[20px_16px] rounded-[15px] shadow-[0px_1px_1px_0px_rgba(0,0,0,0.10)] leading-[20px]">
<div class="marketing-coupon-page bg-white m-[16px_0_16px_16px] p-[20px_16px] rounded-[15px] shadow-[0px_1px_1px_0px_rgba(0,0,0,0.10)] leading-[20px]">
<p class="leading-[30px] mb-[13px] font-[600] text-[24px]"> Coupon khuyến mại </p>
<div class="flex justify-between items-start m-[13px_0]">
@@ -9,7 +9,7 @@
<span>Thêm phiếu mới</span>
</a>
</div>
<div class="order-page-table">
<table>
<thead>

View File

@@ -40,7 +40,7 @@
<td> Địa chỉ nhận hàng </td>
<td>
<span> Kiến Hưng, Quận Hà Đông, Hà Nội </span>
<a href="#js-update-shipping-address" data-fancybox title="Cập nhật địa chỉ nhận hàng" class="icons icon-edit inline-block w-[18px] h-[18px]" style="background-position: -111px -86px;"></a>
<a href="#js-update-shipping-address" data-fancybox title="Cập nhật địa chỉ nhận hàng" class="icons icon-edit inline-block" style="background-position: -111px -86px;"></a>
</td>
</tr>
@@ -48,7 +48,7 @@
<td> Địa chỉ thanh toán </td>
<td>
<span> Kiến Hưng, Quận Hà Đông, Hà Nội </span>
<a href="#js-update-payment" data-fancybox title="Cập nhật địa chỉ thanh toán " class="icons icon-edit inline-block w-[18px] h-[18px]" style="background-position: -111px -86px;"></a>
<a href="#js-update-payment" data-fancybox title="Cập nhật địa chỉ thanh toán" class="icons icon-edit inline-block" style="background-position: -111px -86px;"></a>
</td>
</tr>
</table>
@@ -107,7 +107,7 @@
<td> Phí vận chuyển & giao hàng </td>
<td>
<span> 0 VND </span>
<a href="#js-update-order-shipping" data-fancybox="" title="Cập nhật phí ship cho đơn hàng" class="icons icon-edit inline-block w-[18px] h-[18px]" style="background-position: -111px -86px;vertical-align:sub;"></a>
<a href="#js-update-order-shipping" data-fancybox="" title="Cập nhật phí ship cho đơn hàng" class="icons icon-edit inline-block" style="background-position: -111px -86px;vertical-align:sub;"></a>
</td>
</tr>
@@ -115,7 +115,7 @@
<td> Phí thu hộ </td>
<td>
<span> 0 VND </span>
<a href="#js-update-order-shipping" data-fancybox="" title="Cập nhật phí ship cho đơn hàng" class="icons icon-edit inline-block w-[18px] h-[18px]" style="background-position: -111px -86px;vertical-align:sub;"></a>
<a href="#js-update-order-shipping" data-fancybox="" title="Cập nhật phí ship cho đơn hàng" class="icons icon-edit inline-block" style="background-position: -111px -86px;vertical-align:sub;"></a>
</td>
</tr>

View File

@@ -22,9 +22,8 @@
<script src="https://cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js"></script>
</head>
<body>
{{ global|show_var }}
<div class="admin-global-container">
<!-- Menu full -->
@@ -36,7 +35,7 @@
<a href="" class="menu-logo">
<img src="{{ 'logo.png' | asset_url }}" />
</a>
<div class="menu-list">
<a href="/" class="item">
<i class="icons icon-home"></i>
@@ -47,7 +46,7 @@
{% assign _type = _category[0] %}
{% assign _menuArray = _category[1].menu %}
{% if _category[1].enable == 1 %}
<details {% if _type==global.module %} open {% endif %}>
<details {% if _type == global.module %} open {% endif %}>
<summary class="item">
<div class="flex items-center">
@@ -73,7 +72,7 @@
<div class="sub-menu">
{% for _item in _menuArray %}
<a href="{{_item.url }}" {% if _item.view==global.view and _type==global.module %}
<a href="{{ _item.url }}" {% if _item.view == global.view and _item.module == global.module %}
class="current" {% endif %}> {{ _item.name }} </a>
{% endfor %}
</div>
@@ -108,101 +107,102 @@
</div>
<!-- Menu collapse -->
<div class="admin-menu box-menu fixed top-0 bg-[#004E99] flex flex-col justify-between pb-[20px] min-h-[100vh]"
id="js-menu-small">
<div class="admin-menu box-menu fixed top-0 bg-[#004E99] flex flex-col justify-between pb-[20px] min-h-[100vh]" id="js-menu-small">
<div>
<div class="logo item items-center justify-center border-[rgba(255,255,255,0.15)] border-b p-[20px_0_!important]">
<a href="/" class="">
<img src="{{ 'logo_small.png' | asset_url }}" alt="">
</a>
<div
class="logo item items-center justify-center border-[rgba(255,255,255,0.15)] border-b p-[20px_0_38px_!important]">
<a href="/" class="">
<img src="../assets/images/logo_small.png" alt="">
</a>
<a href="javascript:void(0)" title="Mở menu" class="icon-close" id="js-show-menu">
<i class="fa-solid fa-indent"></i>
</a>
</div>
<div class="item">
<a href="/" class="icons icon-home"> </a>
<div class="sub-menu">
<p class="font-bold"> Dashboard </p>
<a href="javascript:void(0)" title="Mở menu" class="icon-close" id="js-show-menu">
<i class="fa-solid fa-indent"></i>
</a>
</div>
</div>
{% for _category in global.main_menu %}
{% assign _type = _category[0] %}
{% assign _menuArray = _category[1].menu %}
<div class="item">
<a href="/" class="icons icon-home"> </a>
{% if _category[1].enable == 1 %}
<div class="item {% if _type == 'system' %} border-[rgba(255,255,255,0.15)] border-b{% endif %}">
{% if _type == 'order' %} <a href="" class="icons icon-sell"> </a>
{% elsif _type == 'product' %} <a href="" class="icons icon-product"> </a>
{% elsif _type == 'customer' %}<a href="" class="icons icon-user"> </a>
{% elsif _type == 'marketing' %} <a href="" class="icons icon-marketing"> </a>
{% elsif _type == 'investor_relation' %} <a href="" class="icons icon-investor_relation"> </a>
{% elsif _type == 'article' %} <a href="" class="icons icon-content"> </a>
{% elsif _type == 'job' %} <a href="" class="icons icon-job"> </a>
{% elsif _type == 'pcbuilder' %} <a href="" class="icons icon-pcbuilder"> </a>
{% elsif _type == 'payinstall' %} <a href="" class="icons icon-payinstall"> </a>
{% elsif _type == 'distributor' %} <a href="" class="icons icon-distributor"> </a>
{% elsif _type == 'report' %}<i class="icons icon-stats"></i>
{% elsif _type == 'system' %}<i class="icons icon-system"></i>
<div class="sub-menu">
<p class="font-bold"> Dashboard </p>
</div>
</div>
{% for _category in global.main_menu %}
{% assign _type = _category[0] %}
{% assign _menuArray = _category[1].menu %}
{% if _category[1].enable == 1 %}
<div class="item {% if _type == 'system' %} border-[rgba(255,255,255,0.15)] border-b{% endif %} {% if _type == global.module %} current {% endif %}">
{% if _type == 'order' %} <i class="icons icon-sell"> </i>
{% elsif _type == 'product' %} <i class="icons icon-product"> </i>
{% elsif _type == 'customer' %}<i class="icons icon-user"> </i>
{% elsif _type == 'marketing' %} <i class="icons icon-marketing"> </i>
{% elsif _type == 'investor_relation' %} <i class="icons icon-investor_relation"> </i>
{% elsif _type == 'article' %} <i class="icons icon-content"> </i>
{% elsif _type == 'job' %} <i class="icons icon-job"> </i>
{% elsif _type == 'pcbuilder' %} <i class="icons icon-pcbuilder"> </i>
{% elsif _type == 'payinstall' %} <i class="icons icon-payinstall"> </i>
{% elsif _type == 'distributor' %} <i class="icons icon-distributor"> </i>
{% elsif _type == 'report' %}<i class="icons icon-stats"></i>
{% elsif _type == 'system' %}<i class="icons icon-system"></i>
{% endif %}
<div class="sub-menu">
<p class="font-bold"> {{ _category[1].name }} </p>
<div class="menu-list">
{% for _item in _menuArray %}
<a href="{{ _item.url }}" {% if _item.view == global.view %} class="current" {% endif %}>
{{ _item.name }}
</a>
{% endfor %}
</div>
</div>
</div>
{% endif %}
{% endfor %}
<div class="sub-menu">
<p class="font-bold"> {{ _category[1].name }} </p>
<div class="item">
<a href="" class="icons icon-settings"> </a>
<div class="menu-list">
{% for _item in _menuArray %}
<a href="{{ _item.url }}" {% if _item.view==global.view and _type==global.module %}
class="current" {% endif %}> {{ _item.name }} </a>
{% endfor %}
<div class="sub-menu">
<p class="font-bold"> Cài đặt </p>
<div class="menu-list">
{% for _item in global.main_menu.system.menu %}
<a href="{{_item.url }}"> {{_item.name }} </a>
{% endfor %}
</div>
</div>
</div>
</div>
{% endif %}
{% endfor %}
<div class="item">
<a href="" class="icons icon-support"> </a>
<div class="item bottom">
<a href="" class="icons icon-settings"> </a>
<div class="sub-menu">
<p class="font-bold"> Hỗ trợ </p>
<div class="sub-menu">
<p class="font-bold"> Cài đặt </p>
<div class="menu-list">
{% for _item in global.main_menu.system.menu %}
<a href="{{_item.url }}"> {{_item.name }} </a>
{% endfor %}
<div class="menu-list">
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
</div>
</div>
</div>
</div>
<div class="item bottom">
<a href="" class="icons icon-support"> </a>
<div class="item">
<a href="" class="icons icon-account"> </a>
<div class="sub-menu">
<p class="font-bold"> Hỗ trợ </p>
<div class="sub-menu">
<p class="font-bold"> Quản lý tài khoản </p>
<div class="menu-list">
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
</div>
</div>
</div>
<div class="item bottom">
<a href="" class="icons icon-account"> </a>
<div class="sub-menu">
<p class="font-bold"> Quản lý tài khoản </p>
<div class="menu-list">
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<div class="menu-list">
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
<a href=""> Menu title </a>
</div>
</div>
</div>
</div>
@@ -215,7 +215,7 @@
</div>
</div>
</div>
<div class="admin-content-container ml-[50px]" id="js-admin-content-container">
<!-- Header -->
<div class="admin-header-container flex items-center justify-between bg-white px-4 py-3">