Enhance UI and functionality across multiple pages

- Added filter panels and search functionality to media, orders, partners, pricelists, products, products attributes, software versions, translations, and users pages.
- Implemented security checks for create, update, and delete permissions on various pages.
- Updated CSS styles for improved layout and responsiveness, including new styles for filter panels and buttons.
- Refactored existing forms to utilize the new filter panel design for a more consistent user experience.
- Adjusted API versioning in servicereport and servicereports pages for better compatibility.
- Improved button icons for filter actions and form submissions for better user interaction.
This commit is contained in:
“VeLiTi”
2025-12-16 11:39:14 +01:00
parent ec20d44267
commit 364ee773e4
26 changed files with 824 additions and 417 deletions

View File

@@ -3,6 +3,7 @@
--color-light-green: #2FAC66;
--color-green: #005655;
--color-red: #a75151;
--color-gray: #f9fafb;
--text-color: #555555;
--text-color-accent: #4a5361;
--text-color-accent-2:#606c7e;
@@ -121,7 +122,6 @@ aside {
position: fixed;
z-index: 999999;
height: 100%;
width: 260px;
display: flex;
flex-flow: column;
background-color: var(--color-white);
@@ -517,10 +517,15 @@ main .content-header .sort .list button:hover {
main .content-block {
background-color: var(--color-white);
margin-top: 25px;
padding: 15px;
box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, 0.03);
padding: 10px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
overflow: hidden;
border-radius: 3px;
border-radius: 4px;
border: 1px solid #e2e8f0;
}
main .content-block:has(.sortable) {
padding: 0px;
}
main .content-block .block-header {
@@ -821,6 +826,7 @@ main .pagination {
display: flex;
align-items: center;
padding: 25px 0;
justify-content: center;
}
main .pagination a {
@@ -977,18 +983,28 @@ main .manage-order-table .delete-item:hover {
.table {
overflow-x: auto;
padding: 0 10px;
padding: 0;
border-radius: 8px;
overflow: hidden;
}
.table table {
width: 100%;
border-collapse: collapse;
background-color: var(--color-white);
}
.table table thead th,
.table table thead td {
font-weight: 600;
font-size: 14px;
padding: 15px 0;
font-size: 13px;
padding: 16px 20px;
color: #64748b;
text-transform: uppercase;
letter-spacing: 0.5px;
background-color: #f8fafc;
border-bottom: 1px solid #e2e8f0;
text-align: left;
}
.table table thead td a {
@@ -1002,12 +1018,24 @@ main .manage-order-table .delete-item:hover {
padding-left: 5px;
}
.table table tbody tr:first-child td {
padding-top: 10px;
.table table tbody tr {
border-bottom: 1px solid #f1f5f9;
transition: background-color 0.2s ease;
}
.table table tbody tr:hover {
background-color: #f8fafc;
}
.table table tbody tr:last-child {
border-bottom: none;
}
.table table tbody td {
padding: 5px;
padding: 16px 20px;
font-size: 14px;
color: #334155;
vertical-align: middle;
}
.table table tbody .img {
@@ -1019,48 +1047,60 @@ main .manage-order-table .delete-item:hover {
}
.table table tbody .status {
padding: 4px 7px;
border-radius: 4px;
background-color: var(--color-indicator-3);
padding: 6px 12px;
border-radius: 6px;
background-color: #10b981;
font-weight: 500;
font-size: 12px;
color: var(--color-white);
display: inline-block;
text-align: center;
min-width: 60px;
}
.table table tbody .status.enabled {
padding: 4px 7px;
border-radius: 4px;
background-color: var(--color-indicator-1);
padding: 6px 12px;
border-radius: 6px;
background-color: #10b981;
font-weight: 500;
font-size: 12px;
color: var(--color-white);
display: inline-block;
text-align: center;
min-width: 60px;
}
.table table tbody .status.disabled {
padding: 4px 7px;
border-radius: 4px;
background-color: var(--color-indicator-2);
padding: 6px 12px;
border-radius: 6px;
background-color: #ef4444;
font-weight: 500;
font-size: 12px;
color: var(--color-white);
display: inline-block;
text-align: center;
min-width: 60px;
}
.status {
padding: 4px 7px;
border-radius: 4px;
background-color: var(--color-indicator-3);
padding: 6px 12px;
border-radius: 6px;
background-color: #10b981;
font-weight: 500;
font-size: 12px;
color: var(--color-white);
display: inline-block;
text-align: center;
min-width: 60px;
}
.status.enabled {
background-color: var(--color-indicator-1);
background-color: #10b981;
}
.status.disabled {
background-color: var(--color-indicator-2);
background-color: #ef4444;
}
.status.id4 {
@@ -1255,11 +1295,9 @@ background-color: var(--color-indicator-1);
color: var(--color-white);
padding: 0 14px;
font-size: 12px;
font-weight: 600;
border-radius: 4px;
border-radius: 3px;
height: 38px;
margin: 2px;
font-style: italic;
}
.btn2 {
@@ -2869,4 +2907,86 @@ main .products .product .price, main .products .products-wrapper .product .price
width: 25px;
height: 25px;
margin: 1px;
}
/* Filter Panel Styles */
.content-title {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10px;
}
.title-actions {
display: flex;
gap: 10px;
align-items: center;
}
.filter-panel {
background: #f8f9fa;
border: 1px solid #dee2e6;
border-radius: 3px;
}
.filter-content {
padding: 10px;
}
.filter-row {
display: flex;
gap: 15px;
flex-wrap: wrap;
align-items: center;
}
.filter-group {
flex: 1;
min-width: 150px;
}
.search-group {
flex: 2;
min-width: 200px;
}
.filter-group select,
.filter-group input {
width: 100%;
padding: 8px 8px;
border: 1px solid #ddd;
border-radius: 3px;
font-size: 12px;
}
.filter-actions {
display: flex;
gap: 10px;
justify-content: flex-end;
flex-wrap: wrap;
}
@media (max-width: 768px) {
.content-title {
flex-direction: column;
align-items: flex-start;
gap: 15px;
}
.title-actions {
width: 100%;
justify-content: flex-end;
}
.filter-row {
flex-direction: column;
}
.filter-group {
width: 100%;
}
.filter-actions {
justify-content: center;
}
}