Primo commit
This commit is contained in:
155
frontend/pages/parking-settings.html
Normal file
155
frontend/pages/parking-settings.html
Normal file
@@ -0,0 +1,155 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Office Settings - Parking Manager</title>
|
||||
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
|
||||
<link rel="stylesheet" href="/css/styles.css">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<aside class="sidebar">
|
||||
<div class="sidebar-header">
|
||||
<h1>Gestione Parcheggi</h1>
|
||||
</div>
|
||||
<nav class="sidebar-nav"></nav>
|
||||
<div class="sidebar-footer">
|
||||
<div class="user-menu">
|
||||
<button class="user-button" id="userMenuButton">
|
||||
<div class="user-avatar">
|
||||
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor"
|
||||
stroke-width="2">
|
||||
<path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path>
|
||||
<circle cx="12" cy="7" r="4"></circle>
|
||||
</svg>
|
||||
</div>
|
||||
<div class="user-info">
|
||||
<div class="user-name" id="userName">Caricamento...</div>
|
||||
<div class="user-role" id="userRole">-</div>
|
||||
</div>
|
||||
</button>
|
||||
<div class="user-dropdown" id="userDropdown" style="display: none;">
|
||||
<a href="/profile" class="dropdown-item">Profilo</a>
|
||||
<a href="/settings" class="dropdown-item">Impostazioni</a>
|
||||
<hr class="dropdown-divider">
|
||||
<button class="dropdown-item" id="logoutButton">Esci</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</aside>
|
||||
|
||||
<main class="main-content">
|
||||
<header class="page-header">
|
||||
<h2>Impostazioni Ufficio</h2>
|
||||
</header>
|
||||
|
||||
<div class="content-wrapper">
|
||||
|
||||
<!-- Office Selection Card (Admin Only) -->
|
||||
<div class="card" id="officeSelectionCard" style="margin-bottom: 1.5rem; display: none;">
|
||||
<div style="display: flex; align-items: center; gap: 1rem;">
|
||||
<label for="officeSelect" style="font-weight: 500; min-width: max-content;">Seleziona
|
||||
Ufficio:</label>
|
||||
<select id="officeSelect" class="form-select" style="flex: 1; max-width: 300px;">
|
||||
<option value="">Seleziona Ufficio</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="settingsContent" style="display: none;">
|
||||
|
||||
<!-- Card 1: Batch Scheduling Settings -->
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h3>Schedulazione Automatica</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form id="scheduleForm">
|
||||
<div class="form-group">
|
||||
<label class="toggle-label">
|
||||
<span>Abilita Assegnazione Batch</span>
|
||||
<label class="toggle-switch">
|
||||
<input type="checkbox" id="bookingWindowEnabled">
|
||||
<span class="toggle-slider"></span>
|
||||
</label>
|
||||
</label>
|
||||
<small class="text-muted">Se abilitato, l'assegnazione dei posti avverrà solo dopo
|
||||
l'orario
|
||||
di cut-off del giorno precedente.</small>
|
||||
</div>
|
||||
|
||||
<div class="form-group" id="cutoffTimeGroup">
|
||||
<label>Orario di Cut-off (Giorno Precedente)</label>
|
||||
<div style="display: flex; gap: 0.5rem; align-items: center;">
|
||||
<select id="bookingWindowHour" style="width: 80px;">
|
||||
<!-- Populated by JS -->
|
||||
</select>
|
||||
<span>:</span>
|
||||
<select id="bookingWindowMinute" style="width: 80px;">
|
||||
<option value="0">00</option>
|
||||
<option value="15">15</option>
|
||||
<option value="30">30</option>
|
||||
<option value="45">45</option>
|
||||
</select>
|
||||
</div>
|
||||
<small class="text-muted">Le presenze inserite prima di questo orario saranno messe in
|
||||
attesa.</small>
|
||||
</div>
|
||||
|
||||
<div class="form-actions">
|
||||
<button type="submit" class="btn btn-dark">Salva Impostazioni</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Card 2: Testing Tools -->
|
||||
<div class="card">
|
||||
<div class="card-header"
|
||||
style="display: flex; justify-content: space-between; align-items: center;">
|
||||
<h3>Strumenti di Test</h3>
|
||||
<span class="badge badge-warning">Testing Only</span>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<p class="text-muted" style="margin-bottom: 1rem;">Usa questi strumenti per verificare il
|
||||
funzionamento dell'assegnazione automatica.</p>
|
||||
|
||||
<div class="form-group">
|
||||
<label>Range di Date di Test</label>
|
||||
<div style="display: flex; gap: 1rem;">
|
||||
<div>
|
||||
<small>Da:</small>
|
||||
<input type="date" id="testDateStart" class="form-control" style="width: 160px;">
|
||||
</div>
|
||||
<div>
|
||||
<small>A (incluso):</small>
|
||||
<input type="date" id="testDateEnd" class="form-control" style="width: 160px;">
|
||||
</div>
|
||||
</div>
|
||||
<small class="text-muted">Lascia "A" vuoto per eseguire su un singolo giorno.</small>
|
||||
</div>
|
||||
|
||||
<div style="display: flex; gap: 1rem; margin-top: 1rem;">
|
||||
<button id="runAllocationBtn" class="btn btn-primary">
|
||||
Esegui Assegnazione Ora
|
||||
</button>
|
||||
<button id="clearAssignmentsBtn" class="btn btn-danger">
|
||||
Elimina Tutte le Assegnazioni
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div> <!-- End settingsContent -->
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<script src="/js/api.js"></script>
|
||||
<script src="/js/utils.js"></script>
|
||||
<script src="/js/nav.js"></script>
|
||||
<script src="/js/parking-settings.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
Reference in New Issue
Block a user