練習室後台
This commit is contained in:
@@ -0,0 +1,133 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>後台首頁|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<!-- 後台上方 Navbar -->
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<!-- 左側管理選單 -->
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link" href="practices/index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link" href="songs/index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<!-- 主內容 -->
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<h1 class="h3 mb-4 text-white">後台首頁</h1>
|
||||
|
||||
<div class="row g-4 mb-5">
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card sk-card shadow-sm h-100 p-3">
|
||||
<div class="card-body">
|
||||
<i class="bi bi-people fs-3 text-white"></i>
|
||||
<div class="text-body-secondary small mt-2 mb-1">練習生人數</div>
|
||||
<div class="sk-stat-value">6</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card sk-card shadow-sm h-100 p-3">
|
||||
<div class="card-body">
|
||||
<i class="bi bi-lightning-charge fs-3 text-white"></i>
|
||||
<div class="text-body-secondary small mt-2 mb-1">今日練習次數</div>
|
||||
<div class="sk-stat-value">9</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card sk-card shadow-sm h-100 p-3">
|
||||
<div class="card-body">
|
||||
<i class="bi bi-mortarboard fs-3 text-white"></i>
|
||||
<div class="text-body-secondary small mt-2 mb-1">課程數量</div>
|
||||
<div class="sk-stat-value">8</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-6 col-xl-3">
|
||||
<div class="card sk-card shadow-sm h-100 p-3">
|
||||
<div class="card-body">
|
||||
<i class="bi bi-check2-circle fs-3 text-white"></i>
|
||||
<div class="text-body-secondary small mt-2 mb-1">已完成任務數</div>
|
||||
<div class="sk-stat-value">23</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h2 class="sk-section-title"><i class="bi bi-journal-text"></i>最近練習紀錄</h2>
|
||||
|
||||
<div class="card sk-card sk-surface">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover mb-0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>練習生</th>
|
||||
<th>日期</th>
|
||||
<th>訓練類型</th>
|
||||
<th>歌曲</th>
|
||||
<th>練習時間</th>
|
||||
<th>完成度</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>努比</td>
|
||||
<td>2026-07-16</td>
|
||||
<td><span class="badge badge-type badge-type--dance">舞蹈</span></td>
|
||||
<td>Road Fighter</td>
|
||||
<td>40 分鐘</td>
|
||||
<td>85%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>小星</td>
|
||||
<td>2026-07-16</td>
|
||||
<td><span class="badge badge-type badge-type--vocal">聲樂</span></td>
|
||||
<td>Couple</td>
|
||||
<td>35 分鐘</td>
|
||||
<td>78%</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>阿凱</td>
|
||||
<td>2026-07-15</td>
|
||||
<td><span class="badge badge-type badge-type--rap">Rap</span></td>
|
||||
<td>Chivalry</td>
|
||||
<td>25 分鐘</td>
|
||||
<td>60%</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,119 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>新增練習紀錄|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link" href="../songs/index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<h1 class="h3 mb-4 text-white">新增練習紀錄</h1>
|
||||
|
||||
<div class="card sk-card sk-surface p-4" style="max-width: 42rem;">
|
||||
<form>
|
||||
<div class="row g-3">
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="traineeName" class="form-label">練習生</label>
|
||||
<select class="form-select" id="traineeName">
|
||||
<option>努比</option>
|
||||
<option>小星</option>
|
||||
<option>阿凱</option>
|
||||
<option>敏珠</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceDate" class="form-label">日期</label>
|
||||
<input type="date" class="form-control" id="practiceDate">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceType" class="form-label">訓練類型</label>
|
||||
<select class="form-select" id="practiceType">
|
||||
<option>聲樂</option>
|
||||
<option>舞蹈</option>
|
||||
<option>Rap</option>
|
||||
<option>舞台表現</option>
|
||||
<option>體能</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceSong" class="form-label">歌曲</label>
|
||||
<select class="form-select" id="practiceSong">
|
||||
<option>Couple</option>
|
||||
<option>Road Fighter</option>
|
||||
<option>Com' Back</option>
|
||||
<option>Chivalry</option>
|
||||
<option>The Way This Guy Lives</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceMinutes" class="form-label">練習時間(分鐘)</label>
|
||||
<input type="number" class="form-control" id="practiceMinutes" placeholder="例如:40">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceStatus" class="form-label">完成狀態</label>
|
||||
<select class="form-select" id="practiceStatus">
|
||||
<option>未開始</option>
|
||||
<option>進行中</option>
|
||||
<option>已完成</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label for="practiceCompletion" class="form-label d-flex justify-content-between">
|
||||
<span>完成度</span>
|
||||
<span class="text-body-secondary" id="completionValue">50%</span>
|
||||
</label>
|
||||
<input type="range" class="form-range" id="practiceCompletion" min="0" max="100" value="50"
|
||||
oninput="document.getElementById('completionValue').textContent = this.value + '%'">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="d-flex gap-2 mt-4">
|
||||
<button type="submit" class="btn btn-brand">儲存</button>
|
||||
<a class="btn btn-outline-brand" href="index.html">取消</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,68 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>刪除練習紀錄|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link" href="../songs/index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<h1 class="h3 mb-4 text-white">刪除練習紀錄</h1>
|
||||
|
||||
<div class="card sk-card sk-surface p-4" style="max-width: 32rem;">
|
||||
<div class="alert alert-danger mb-4" role="alert">
|
||||
<i class="bi bi-exclamation-triangle-fill me-1"></i>確定要刪除這筆練習紀錄嗎?此動作無法復原。
|
||||
</div>
|
||||
|
||||
<dl class="row mb-4">
|
||||
<dt class="col-4 text-body-secondary">練習生</dt>
|
||||
<dd class="col-8">努比</dd>
|
||||
<dt class="col-4 text-body-secondary">日期</dt>
|
||||
<dd class="col-8">2026-07-16</dd>
|
||||
<dt class="col-4 text-body-secondary">訓練類型</dt>
|
||||
<dd class="col-8">舞蹈</dd>
|
||||
<dt class="col-4 text-body-secondary">歌曲</dt>
|
||||
<dd class="col-8">Road Fighter</dd>
|
||||
</dl>
|
||||
|
||||
<div class="d-flex gap-2">
|
||||
<button type="button" class="btn btn-danger">確認刪除</button>
|
||||
<a class="btn btn-outline-brand" href="index.html">取消</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,119 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>編輯練習紀錄|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link" href="../songs/index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<h1 class="h3 mb-4 text-white">編輯練習紀錄</h1>
|
||||
|
||||
<div class="card sk-card sk-surface p-4" style="max-width: 42rem;">
|
||||
<form>
|
||||
<div class="row g-3">
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="traineeName" class="form-label">練習生</label>
|
||||
<select class="form-select" id="traineeName">
|
||||
<option selected>努比</option>
|
||||
<option>小星</option>
|
||||
<option>阿凱</option>
|
||||
<option>敏珠</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceDate" class="form-label">日期</label>
|
||||
<input type="date" class="form-control" id="practiceDate" value="2026-07-16">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceType" class="form-label">訓練類型</label>
|
||||
<select class="form-select" id="practiceType">
|
||||
<option>聲樂</option>
|
||||
<option selected>舞蹈</option>
|
||||
<option>Rap</option>
|
||||
<option>舞台表現</option>
|
||||
<option>體能</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceSong" class="form-label">歌曲</label>
|
||||
<select class="form-select" id="practiceSong">
|
||||
<option>Couple</option>
|
||||
<option selected>Road Fighter</option>
|
||||
<option>Com' Back</option>
|
||||
<option>Chivalry</option>
|
||||
<option>The Way This Guy Lives</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceMinutes" class="form-label">練習時間(分鐘)</label>
|
||||
<input type="number" class="form-control" id="practiceMinutes" value="40">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="practiceStatus" class="form-label">完成狀態</label>
|
||||
<select class="form-select" id="practiceStatus">
|
||||
<option>未開始</option>
|
||||
<option>進行中</option>
|
||||
<option selected>已完成</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-12">
|
||||
<label for="practiceCompletion" class="form-label d-flex justify-content-between">
|
||||
<span>完成度</span>
|
||||
<span class="text-body-secondary" id="completionValue">85%</span>
|
||||
</label>
|
||||
<input type="range" class="form-range" id="practiceCompletion" min="0" max="100" value="85"
|
||||
oninput="document.getElementById('completionValue').textContent = this.value + '%'">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="d-flex gap-2 mt-4">
|
||||
<button type="submit" class="btn btn-brand">儲存變更</button>
|
||||
<a class="btn btn-outline-brand" href="index.html">取消</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,125 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>練習紀錄管理|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link" href="../songs/index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<div class="d-flex flex-wrap justify-content-between align-items-center gap-2 mb-4">
|
||||
<h1 class="h3 mb-0 text-white">練習紀錄管理</h1>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand" href="create.html"><i class="bi bi-plus-lg me-1"></i>新增練習紀錄</a>
|
||||
<a class="btn btn-outline-brand" href="../index.html">回後台首頁</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card sk-card sk-surface">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover mb-0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>練習生</th>
|
||||
<th>日期</th>
|
||||
<th>訓練類型</th>
|
||||
<th>歌曲</th>
|
||||
<th>練習時間</th>
|
||||
<th>完成度</th>
|
||||
<th>完成狀態</th>
|
||||
<th class="text-end">操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>努比</td>
|
||||
<td>2026-07-16</td>
|
||||
<td><span class="badge badge-type badge-type--dance">舞蹈</span></td>
|
||||
<td>Road Fighter</td>
|
||||
<td>40 分鐘</td>
|
||||
<td>85%</td>
|
||||
<td><span class="badge badge-status badge-status--done">已完成</span></td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-brand" href="edit.html">編輯</a>
|
||||
<a class="btn btn-sm btn-outline-danger" href="delete.html">刪除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>小星</td>
|
||||
<td>2026-07-16</td>
|
||||
<td><span class="badge badge-type badge-type--vocal">聲樂</span></td>
|
||||
<td>Couple</td>
|
||||
<td>35 分鐘</td>
|
||||
<td>78%</td>
|
||||
<td><span class="badge badge-status badge-status--done">已完成</span></td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-brand" href="edit.html">編輯</a>
|
||||
<a class="btn btn-sm btn-outline-danger" href="delete.html">刪除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>阿凱</td>
|
||||
<td>2026-07-15</td>
|
||||
<td><span class="badge badge-type badge-type--rap">Rap</span></td>
|
||||
<td>Chivalry</td>
|
||||
<td>25 分鐘</td>
|
||||
<td>60%</td>
|
||||
<td><span class="badge badge-status badge-status--progress">進行中</span></td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-brand" href="edit.html">編輯</a>
|
||||
<a class="btn btn-sm btn-outline-danger" href="delete.html">刪除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>敏珠</td>
|
||||
<td>2026-07-14</td>
|
||||
<td><span class="badge badge-type badge-type--stage">舞台表現</span></td>
|
||||
<td>Com' Back</td>
|
||||
<td>50 分鐘</td>
|
||||
<td>0%</td>
|
||||
<td><span class="badge badge-status badge-status--pending">未開始</span></td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-brand" href="edit.html">編輯</a>
|
||||
<a class="btn btn-sm btn-outline-danger" href="delete.html">刪除</a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,96 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>新增歌曲|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link" href="../practices/index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<h1 class="h3 mb-4 text-white">新增歌曲</h1>
|
||||
|
||||
<div class="card sk-card sk-surface p-4">
|
||||
<form>
|
||||
<div class="row g-3">
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songName" class="form-label">歌名</label>
|
||||
<input type="text" class="form-control" id="songName" placeholder="例如:Couple">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songAlbum" class="form-label">專輯</label>
|
||||
<input type="text" class="form-control" id="songAlbum" placeholder="例如:Come Back Again">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songYear" class="form-label">發行年份</label>
|
||||
<input type="number" class="form-control" id="songYear" placeholder="例如:1997">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songYoutube" class="form-label">YouTube 連結</label>
|
||||
<input type="url" class="form-control" id="songYoutube" placeholder="https://www.youtube.com/...">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songDifficulty" class="form-label">舞蹈難度</label>
|
||||
<select class="form-select" id="songDifficulty">
|
||||
<option>低</option>
|
||||
<option>中等</option>
|
||||
<option>高</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label class="form-label d-block">是否顯示</label>
|
||||
<div class="form-check form-switch mt-2">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="songVisible" checked>
|
||||
<label class="form-check-label" for="songVisible">於前台顯示</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="d-flex gap-2 mt-4">
|
||||
<button type="submit" class="btn btn-brand">儲存</button>
|
||||
<a class="btn btn-outline-brand" href="index.html">取消</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,68 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>刪除歌曲|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link" href="../practices/index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<h1 class="h3 mb-4 text-white">刪除歌曲</h1>
|
||||
|
||||
<div class="card sk-card sk-surface p-4" style="max-width: 32rem;">
|
||||
<div class="alert alert-danger mb-4" role="alert">
|
||||
<i class="bi bi-exclamation-triangle-fill me-1"></i>確定要刪除這首歌曲嗎?此動作無法復原。
|
||||
</div>
|
||||
|
||||
<dl class="row mb-4">
|
||||
<dt class="col-4 text-body-secondary">編號</dt>
|
||||
<dd class="col-8">1</dd>
|
||||
<dt class="col-4 text-body-secondary">歌名</dt>
|
||||
<dd class="col-8">Couple</dd>
|
||||
<dt class="col-4 text-body-secondary">專輯</dt>
|
||||
<dd class="col-8">Come Back Again</dd>
|
||||
<dt class="col-4 text-body-secondary">發行年份</dt>
|
||||
<dd class="col-8">1997</dd>
|
||||
</dl>
|
||||
|
||||
<div class="d-flex gap-2">
|
||||
<button type="button" class="btn btn-danger">確認刪除</button>
|
||||
<a class="btn btn-outline-brand" href="index.html">取消</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,103 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>編輯歌曲|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link" href="../practices/index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<h1 class="h3 mb-4 text-white">編輯歌曲</h1>
|
||||
|
||||
<div class="card sk-card sk-surface p-4">
|
||||
<form>
|
||||
<div class="row g-3">
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songId" class="form-label">編號</label>
|
||||
<input type="text" class="form-control" id="songId" value="1" disabled>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6"></div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songName" class="form-label">歌名</label>
|
||||
<input type="text" class="form-control" id="songName" value="Couple">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songAlbum" class="form-label">專輯</label>
|
||||
<input type="text" class="form-control" id="songAlbum" value="Come Back Again">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songYear" class="form-label">發行年份</label>
|
||||
<input type="number" class="form-control" id="songYear" value="1997">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songYoutube" class="form-label">YouTube 連結</label>
|
||||
<input type="url" class="form-control" id="songYoutube" value="https://www.youtube.com/">
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label for="songDifficulty" class="form-label">舞蹈難度</label>
|
||||
<select class="form-select" id="songDifficulty">
|
||||
<option>低</option>
|
||||
<option selected>中等</option>
|
||||
<option>高</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="col-md-6">
|
||||
<label class="form-label d-block">是否顯示</label>
|
||||
<div class="form-check form-switch mt-2">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="songVisible" checked>
|
||||
<label class="form-check-label" for="songVisible">於前台顯示</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="d-flex gap-2 mt-4">
|
||||
<button type="submit" class="btn btn-brand">儲存變更</button>
|
||||
<a class="btn btn-outline-brand" href="index.html">取消</a>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,112 @@
|
||||
<!doctype html>
|
||||
<html lang="zh-Hant">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>歌曲資料管理|水晶練習室 Admin</title>
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.css" rel="stylesheet">
|
||||
<link href="../../css/style.css" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand navbar-dark sk-navbar">
|
||||
<div class="container-fluid">
|
||||
<span class="navbar-brand mb-0"><i class="bi bi-gem me-1"></i>水晶練習室 <span class="fw-light">Admin</span></span>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand btn-sm" href="../../index.html">回前台</a>
|
||||
<a class="btn btn-outline-brand btn-sm" href="../../index.html">登出</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
|
||||
<aside class="col-lg-2 border-end sk-admin-sidebar py-4 px-3 min-vh-100">
|
||||
<nav class="nav flex-column">
|
||||
<a class="nav-link" href="../index.html"><i class="bi bi-speedometer2 me-2"></i>後台首頁</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-people me-2"></i>練習生管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-mortarboard me-2"></i>課程管理</a>
|
||||
<a class="nav-link" href="../practices/index.html"><i class="bi bi-journal-text me-2"></i>練習紀錄管理</a>
|
||||
<a class="nav-link active" href="index.html"><i class="bi bi-music-note-list me-2"></i>歌曲資料管理</a>
|
||||
<a class="nav-link disabled" href="#" aria-disabled="true"><i class="bi bi-list-task me-2"></i>訓練任務管理</a>
|
||||
</nav>
|
||||
</aside>
|
||||
|
||||
<main class="col-lg-10 py-4 px-4">
|
||||
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||
<h1 class="h3 mb-0 text-white">歌曲資料管理</h1>
|
||||
<div class="d-flex gap-2">
|
||||
<a class="btn btn-brand" href="create.html"><i class="bi bi-plus-lg me-1"></i>新增歌曲</a>
|
||||
<a class="btn btn-outline-brand" href="../index.html">回後台首頁</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card sk-card sk-surface">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover align-middle mb-0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>編號</th>
|
||||
<th>歌名</th>
|
||||
<th>專輯</th>
|
||||
<th>發行年份</th>
|
||||
<th>YouTube 連結</th>
|
||||
<th>舞蹈難度</th>
|
||||
<th>是否顯示</th>
|
||||
<th class="text-end">操作</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>1</td>
|
||||
<td>Couple</td>
|
||||
<td>Come Back Again</td>
|
||||
<td>1997</td>
|
||||
<td><a href="https://www.youtube.com/" target="_blank" rel="noopener">連結</a></td>
|
||||
<td><span class="badge text-bg-warning">中等</span></td>
|
||||
<td><span class="badge text-bg-success">顯示</span></td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-brand" href="edit.html">編輯</a>
|
||||
<a class="btn btn-sm btn-outline-danger" href="delete.html">刪除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2</td>
|
||||
<td>Road Fighter</td>
|
||||
<td>Road Fighter</td>
|
||||
<td>2000</td>
|
||||
<td><a href="https://www.youtube.com/" target="_blank" rel="noopener">連結</a></td>
|
||||
<td><span class="badge text-bg-danger">高</span></td>
|
||||
<td><span class="badge text-bg-success">顯示</span></td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-brand" href="edit.html">編輯</a>
|
||||
<a class="btn btn-sm btn-outline-danger" href="delete.html">刪除</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>3</td>
|
||||
<td>Couple 재수사</td>
|
||||
<td>The Story of Kies Part 1</td>
|
||||
<td>2016</td>
|
||||
<td><a href="https://www.youtube.com/" target="_blank" rel="noopener">連結</a></td>
|
||||
<td><span class="badge text-bg-secondary">低</span></td>
|
||||
<td><span class="badge text-bg-secondary">隱藏</span></td>
|
||||
<td class="text-end">
|
||||
<a class="btn btn-sm btn-outline-brand" href="edit.html">編輯</a>
|
||||
<a class="btn btn-sm btn-outline-danger" href="delete.html">刪除</a>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user