Clean up demo files and finalize mobile UI implementation

Co-authored-by: clayschaad <11883505+clayschaad@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot] 2025-08-28 18:27:40 +00:00
parent b89384ffb5
commit 0a004de8e2

View file

@ -1,460 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Shift Scheduler - Mobile UI Demo</title>
<style>
body {
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
margin: 0;
padding: 20px;
background-color: #f5f5f5;
}
/* Top navigation buttons */
.top-nav-buttons {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 1rem;
flex-wrap: wrap;
gap: 1rem;
/* Make buttons scrollable instead of fixed */
position: static;
overflow: visible;
}
/* Mobile top navigation - stack vertically */
@media (max-width: 768px) {
.top-nav-buttons {
flex-direction: column;
align-items: stretch;
gap: 0.5rem;
}
.month-selection {
justify-content: center;
}
.action-buttons {
justify-content: center;
}
}
/* Month selection buttons */
.month-selection {
display: flex;
gap: 0.5rem;
}
/* Action buttons container */
.action-buttons {
display: flex;
gap: 0.5rem;
flex-wrap: wrap;
}
/* Month navigation buttons */
.month-btn {
padding: 0.5rem 1rem;
border: 2px solid #1b6ec2;
background-color: #fff;
color: #1b6ec2;
border-radius: 4px;
cursor: pointer;
transition: all 0.2s ease;
}
.month-btn:hover {
background-color: #f8f9fa;
}
.month-btn.selected {
background-color: #1b6ec2;
color: #fff;
}
/* Export button */
.btn.export-btn {
margin: 5px;
padding: 10px 20px;
font-size: 16px;
cursor: pointer;
background-color: #ADD8E6; /* Light blue */
color: #333;
border: 2px solid #87CEEB; /* Slightly darker blue border */
border-radius: 5px;
transition: background-color 0.2s ease;
}
.btn.export-btn:hover {
background-color: #87CEEB;
border-color: #4682B4;
}
/* Reset button */
.reset-btn {
margin: 5px;
padding: 10px 20px;
font-size: 16px;
cursor: pointer;
background-color: #FFB6C1; /* Light red/pink */
color: #333;
border: 2px solid #FF91A4; /* Slightly darker red border */
border-radius: 5px;
transition: background-color 0.2s ease;
}
.reset-btn:hover {
background-color: #FF91A4;
border-color: #FF69B4;
}
/* Configuration button */
.btn.config-btn {
margin: 5px;
padding: 10px 20px;
font-size: 16px;
cursor: pointer;
background-color: #DDA0DD; /* Light purple/plum */
color: #333;
border: 2px solid #DA70D6; /* Slightly darker purple border */
border-radius: 5px;
transition: background-color 0.2s ease;
}
.btn.config-btn:hover {
background-color: #DA70D6;
border-color: #BA55D3;
}
/* Calendar container */
.calendar-container {
margin-top: 1rem;
}
.calendar-grid {
display: grid;
gap: 1rem;
}
/* Desktop calendar grid - week-based layout with 7 columns max */
.desktop-calendar {
grid-template-columns: repeat(7, 1fr);
}
/* Mobile calendar grid - single column */
.mobile-calendar {
grid-template-columns: 1fr;
}
/* Show desktop calendar only on larger screens */
@media (min-width: 769px) {
.desktop-calendar {
display: grid;
}
.mobile-calendar {
display: none;
}
}
/* Show mobile calendar only on smaller screens */
@media (max-width: 768px) {
.desktop-calendar {
display: none;
}
.mobile-calendar {
display: grid;
}
}
/* Each day cell */
.day-cell {
border: 1px solid #dee2e6;
border-radius: 8px;
padding: 1rem;
background-color: #fff;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
/* Mobile day cell adjustments */
@media (max-width: 768px) {
.day-cell {
padding: 0.75rem;
margin-bottom: 0.5rem;
}
}
/* Day number */
.day-header {
font-weight: bold;
margin-bottom: 0.5rem;
color: #333;
font-size: 0.9rem;
}
/* Shift buttons container */
.shifts {
display: grid;
gap: 0.5rem;
margin-bottom: 0.5rem;
}
/* Desktop shift buttons - 3 columns */
@media (min-width: 769px) {
.shifts {
grid-template-columns: repeat(3, 1fr);
}
}
/* Mobile shift buttons - single row */
@media (max-width: 768px) {
.shifts {
grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));
gap: 0.25rem;
}
}
/* Individual shift buttons */
.shift-button {
border: 2px solid #ddd;
border-radius: 6px;
padding: 0.5rem;
background-color: #fff;
cursor: pointer;
font-size: 1.2rem;
transition: all 0.2s ease;
text-align: center;
min-height: 2.5rem;
display: flex;
align-items: center;
justify-content: center;
}
/* Mobile shift button adjustments */
@media (max-width: 768px) {
.shift-button {
min-height: 2rem;
font-size: 1rem;
padding: 0.4rem;
}
}
.shift-button:hover {
background-color: #f8f9fa;
border-color: #007bff;
transform: translateY(-1px);
}
/* Selected shift */
.shift-button.selected {
background-color: #007bff;
color: white;
border-color: #0056b3;
}
h3 {
color: #333;
margin-bottom: 1rem;
}
.demo-note {
background-color: #e7f3ff;
border: 1px solid #b3d9ff;
border-radius: 5px;
padding: 1rem;
margin-bottom: 1rem;
color: #0066cc;
}
</style>
</head>
<body>
<div class="demo-note">
<strong>Demo Note:</strong> This is a responsive layout demo. Resize your browser window to see mobile vs desktop layouts.
<br>Desktop (>768px): Week-based grid with max 7 columns, 3-column shift buttons
<br>Mobile (≤768px): Single column layout, single-row shift buttons
</div>
<h3>Shift Scheduler - November 2024</h3>
<div class="top-nav-buttons">
<div class="month-selection">
<button class="month-btn">Next Month</button>
<button class="month-btn selected">Current Month</button>
</div>
<div class="action-buttons">
<button class="reset-btn">Reset Schedule</button>
<button class="btn export-btn">Export to ICS</button>
<button class="btn export-btn">Export to PDF</button>
<button class="btn config-btn">⚙️ Configuration</button>
</div>
</div>
<div class="calendar-container">
<!-- Desktop week-based layout -->
<div class="calendar-grid desktop-calendar">
<!-- Week 1 -->
<div class="day-cell">
<div class="day-header">01.11.2024 (Friday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">02.11.2024 (Saturday)</div>
<div class="shifts">
<button class="shift-button selected">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">03.11.2024 (Sunday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button selected">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<!-- Week 2 -->
<div class="day-cell">
<div class="day-header">04.11.2024 (Monday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button selected">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">05.11.2024 (Tuesday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button selected">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">06.11.2024 (Wednesday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button selected">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">07.11.2024 (Thursday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button selected">📋</button>
</div>
</div>
</div>
<!-- Mobile single-column layout -->
<div class="calendar-grid mobile-calendar">
<div class="day-cell">
<div class="day-header">01.11.2024 (Friday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">02.11.2024 (Saturday)</div>
<div class="shifts">
<button class="shift-button selected">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">03.11.2024 (Sunday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button selected">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">04.11.2024 (Monday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button selected">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">05.11.2024 (Tuesday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button selected">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">06.11.2024 (Wednesday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button selected">☀️</button>
<button class="shift-button">📋</button>
</div>
</div>
<div class="day-cell">
<div class="day-header">07.11.2024 (Thursday)</div>
<div class="shifts">
<button class="shift-button">⚫</button>
<button class="shift-button">🌴</button>
<button class="shift-button">🌅</button>
<button class="shift-button">🌆</button>
<button class="shift-button">☀️</button>
<button class="shift-button selected">📋</button>
</div>
</div>
</div>
</div>
</body>
</html>