development branch created to preserve working deploy project

This commit is contained in:
2025-08-02 17:37:16 +03:00
parent 5e65ea0f7c
commit e824e87953
659 changed files with 90008 additions and 137 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

File diff suppressed because one or more lines are too long
@@ -0,0 +1,3 @@
<!-- saved from url=(0011)about:blank -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><script>window.__CF$cv$params={r:'9564537ddd1dd0cf',t:'MTc1MTAyMDgyNS4wMDAwMDA='};var a=document.createElement('script');a.nonce='3e3a48cb-474b-40a6-bcdd-03614e327eff';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);</script><script src="https://chatgpt.com/cdn-cgi/challenge-platform/scripts/jsd/main.js"></script></head><body></body></html>
@@ -0,0 +1,71 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Line Operator Dashboard | Container Depot</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
.sidebar {
width: 220px;
}
.section-title {
padding: 8px 16px;
font-size: 11px;
text-transform: uppercase;
letter-spacing: 0.05em;
color: #93c5fd; /* light blue */
}
.nav-item {
display: flex;
align-items: center;
padding: 12px 24px;
text-decoration: none;
color: white;
background-color: #1f2937; /* dark bg for example */
transition: background-color 0.2s ease;
}
.nav-item:hover {
background-color: #374151;
}
.nav-item.active {
background-color: #2563eb; /* active item bg */
}
.nav-item .icon {
width: 20px;
height: 20px;
margin-right: 12px;
stroke: currentColor;
}
</style>
</head>
<body>
<div class="sidebar">
<div class="section-title">Main</div>
<a href="dashboard.html" class="nav-item active">
<svg xmlns="http://www.w3.org/2000/svg" class="icon" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2"
d="M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6
0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6"/>
</svg>
Dashboard
</a>
<a href="dashboard.html" class="nav-item active">
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 mr-3" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2" />
</svg>
Container Preinfo
</a>
<a href="dashboard.html" class="nav-item active">
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 mr-3" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4" />
</svg>
Bookings
</a>
</div>
</body>
+99
View File
@@ -0,0 +1,99 @@
<!DOCTYPE html>
<html lang="bg">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Таблица с красиви ръбове</title>
<style>
body {
font-family: Arial, sans-serif;
}
table {
border-collapse: separate;
border-spacing: 0;
margin: 10px auto;
width: 80%;
border: 1px solid #E1C6A8;
border-radius: 10px;
overflow: hidden;
line-height: 1.2;
{#font-size: 12px; /* по-малък текст навсякъде */ #}
}
thead {
background-color: #E1C6A8;
}
tfoot {
background-color: #E1C6A8;
}
th, td {
padding: 4px 6px;
text-align: center;
border: none;
}
.footer-container {
display: flex;
justify-content: space-between;
align-items: center;
}
.footer-left button,
.footer-right button {
margin: 0 3px;
padding: 3px 6px;
font-size: 12px;
}
.page-number {
margin: 0 10px;
font-weight: bold;
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<th>Колона 1</th>
<th>Колона 2</th>
<th>Колона 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>Ред 1</td>
<td>Ред 1</td>
<td>Ред 1</td>
</tr>
<tr>
<td>Ред 2</td>
<td>Ред 2</td>
<td>Ред 2</td>
</tr>
<tr>
<td>Ред 3</td>
<td>Ред 3</td>
<td>Ред 3</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="3">
<div class="footer-container">
<div class="footer-left">
<button>Добави</button>
<button>Изтрий</button>
<button>Редактирай</button>
</div>
<div class="footer-right">
<button>&laquo; Назад</button>
<span class="page-number">Стр. 1</span>
<button>Напред &raquo;</button>
</div>
</div>
</td>
</tr>
</tfoot>
</table>
</body>
</html>
+87
View File
@@ -0,0 +1,87 @@
/* === Sidebar === */
.sidebar {
width: 16rem;
height: 100%;
color: white;
display: flex;
flex-direction: column;
background: linear-gradient(180deg, #0f4c81 0%, #1a6baf 100%);
transition: all 0.3s;
}
.sidebar-header {
padding: 1.25rem;
border-bottom: 1px solid #2b6cb0;
}
.sidebar-title {
font-size: 1.25rem;
font-weight: 700;
}
.sidebar-subtitle {
font-size: 0.875rem;
color: #bfdbfe;
}
.nav-section {
padding-top: 1rem;
padding-bottom: 1rem;
flex-grow: 1;
}
.nav-label {
padding: 0.5rem 1rem;
font-size: 0.75rem;
text-transform: uppercase;
color: #93c5fd;
letter-spacing: 0.05em;
}
.nav-item {
display: flex;
align-items: center;
padding: 0.75rem 1.5rem;
color: white;
transition: all 0.2s;
text-decoration: none;
}
.nav-item:hover {
background-color: rgba(255, 255, 255, 0.1);
}
.nav-item.active {
background-color: rgba(255, 255, 255, 0.2);
border-left: 4px solid white;
}
.nav-icon {
width: 1.25rem;
height: 1.25rem;
margin-right: 0.75rem;
}
.user-profile {
padding: 1rem;
border-top: 1px solid #2b6cb0;
display: flex;
align-items: center;
}
.user-avatar {
width: 2.5rem;
height: 2.5rem;
border-radius: 9999px;
background-color: #3b82f6;
display: flex;
align-items: center;
justify-content: center;
font-weight: 700;
color: white;
}
.user-details {
margin-left: 0.75rem;
}
.user-name {
font-size: 0.875rem;
font-weight: 500;
}
.user-role {
font-size: 0.75rem;
color: #bfdbfe;
}
.logout-button {
margin-left: auto;
color: white;
}
+232
View File
@@ -0,0 +1,232 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Line Operator Dashboard | Container Depot</title>
<link rel="stylesheet" href="styles.css">
<style>
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background-color: #f5f7fa;
}
.content-area {
transition: all 0.3s;
}
.nav-item {
transition: all 0.2s;
}
.card {
transition: all 0.3s;
}
.card:hover {
transform: translateY(-5px);
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
0 4px 6px -2px rgba(0, 0, 0, 0.05);
}
.tab {
transition: all 0.2s;
}
.tab-content {
display: none;
}
.tab-content.active {
display: block;
animation: fadeIn 0.5s ease-in-out;
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
.form-section {
animation: slideIn 0.5s ease-in-out;
}
@keyframes slideIn {
from { opacity: 0; transform: translateY(10px); }
to { opacity: 1; transform: translateY(0); }
}
</style>
</head>
<body class="layout-root">
<aside class="sidebar">
<div class="sidebar-header">
<h1 class="sidebar-title">Container Depot</h1>
<p class="sidebar-subtitle">Line Operator Portal</p>
</div>
<nav class="nav-section">
<div class="nav-label">Main</div>
<a href="#" class="nav-item active">
<svg class="nav-icon" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6" />
</svg>
Dashboard
</a>
<!-- Repeat for other nav items like Container Preinfo, Expedition Orders, Reports, etc. -->
</nav>
<div class="user-profile">
<div class="user-avatar">LO</div>
<div class="user-details">
<p class="user-name">Maersk Line</p>
<p class="user-role">Line Operator</p>
</div>
<button class="logout-button">
<svg class="nav-icon" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1" />
</svg>
</button>
</div>
</aside>
<!-- Main content layout will continue here... -->
<main class="content-area">
<header class="topbar">
<div class="topbar-inner">
<div class="topbar-title">
<h2>Dashboard</h2>
</div>
<div class="topbar-actions">
<button class="topbar-button">
<svg xmlns="http://www.w3.org/2000/svg" class="topbar-icon" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 17h5l-1.405-1.405A2.032 2.032 0 0118 14.158V11a6.002 6.002 0 00-4-5.659V5a2 2 0 10-4 0v.341C7.67 6.165 6 8.388 6 11v3.159c0 .538-.214 1.055-.595 1.436L4 17h5m6 0v1a3 3 0 11-6 0v-1m6 0H9" />
</svg>
</button>
<button class="topbar-button">
<svg xmlns="http://www.w3.org/2000/svg" class="topbar-icon" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
</svg>
</button>
</div>
</div>
</header>
<!-- More dashboard content will follow -->
<section class="dashboard-overview">
<div class="dashboard-cards">
<div class="card card-blue">
<div class="card-icon">
<svg xmlns="http://www.w3.org/2000/svg" class="card-icon-inner" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10" />
</svg>
</div>
<div class="card-details">
<h3 class="card-title">Active Containers</h3>
<p class="card-number">42</p>
<p class="card-note green">+3 since last week</p>
</div>
</div>
<div class="card card-green">
<div class="card-icon">
<svg xmlns="http://www.w3.org/2000/svg" class="card-icon-inner" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z" />
</svg>
</div>
<div class="card-details">
<h3 class="card-title">Preinfo Sent</h3>
<p class="card-number">18</p>
<p class="card-note green">+5 since last week</p>
</div>
</div>
<div class="card card-orange">
<div class="card-icon">
<svg xmlns="http://www.w3.org/2000/svg" class="card-icon-inner" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4" />
</svg>
</div>
<div class="card-details">
<h3 class="card-title">Pending Orders</h3>
<p class="card-number">7</p>
<p class="card-note orange">2 require attention</p>
</div>
</div>
</div>
</section>
<section class="dashboard-tables">
<div class="table-container">
<div class="table-header">
<h3>Recent Container Activity</h3>
</div>
<table class="data-table">
<thead>
<tr>
<th>Container</th>
<th>Type</th>
<th>Status</th>
<th>Date</th>
</tr>
</thead>
<tbody>
<tr>
<td>MSCU1234567</td>
<td>40HC</td>
<td><span class="badge badge-green">Received</span></td>
<td>2023-06-15</td>
</tr>
<tr>
<td>MSCU7654321</td>
<td>20DV</td>
<td><span class="badge badge-blue">Preinfo</span></td>
<td>2023-06-14</td>
</tr>
<tr>
<td>MSCU2468135</td>
<td>40DV</td>
<td><span class="badge badge-orange">Order</span></td>
<td>2023-06-13</td>
</tr>
<tr>
<td>MSCU1357924</td>
<td>20RF</td>
<td><span class="badge badge-red">Expedited</span></td>
<td>2023-06-12</td>
</tr>
</tbody>
</table>
</div>
<div class="table-container">
<div class="table-header">
<h3>Payment Status</h3>
</div>
<table class="data-table">
<thead>
<tr>
<th>Invoice</th>
<th>Amount</th>
<th>Status</th>
<th>Due Date</th>
</tr>
</thead>
<tbody>
<tr>
<td>INV-2023-0042</td>
<td>$1,250.00</td>
<td><span class="badge badge-green">Paid</span></td>
<td>2023-06-10</td>
</tr>
<tr>
<td>INV-2023-0041</td>
<td>$875.50</td>
<td><span class="badge badge-yellow">Pending</span></td>
<td>2023-06-20</td>
</tr>
<tr>
<td>INV-2023-0040</td>
<td>$2,100.00</td>
<td><span class="badge badge-red">Overdue</span></td>
<td>2023-06-05</td>
</tr>
<tr>
<td>INV-2023-0039</td>
<td>$950.25</td>
<td><span class="badge badge-green">Paid</span></td>
<td>2023-05-28</td>
</tr>
</tbody>
</table>
</div>
</section>
</main>
</body>
</html>