Files
hsa/Html/apps/templates/teacherboard.html
2025-08-31 00:30:53 +08:00

130 lines
5.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>教师个人主页</title>
<link rel="stylesheet" href="/static/css/teacherboard.css">
<link rel="stylesheet" href="/static/css/dashboard.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
</head>
<body>
{% include 'navbar.html' %} <!-- 引入navbar.html -->
<!-- 主页主体部分 -->
<div class="teacherboard">
<h2 class="teacherboard-title">—— 我的课程 ——</h2>
<div class="course-cards" id="course-cards">
<!-- 每个课程的卡片 -->
<div class="course-card" onclick="openCourseDetails('algorithm')">
<img src="/static/image/algorithm/book_cover.png" alt="课程封面" class="course-image">
<div class="course-info">
<h3 class="course-name">算法分析与设计</h3>
<p class="course-description">学习基本的算法知识概念,与算法实现。</p>
</div>
</div>
<!-- 继续添加其他课程卡片 -->
<div class="course-card" onclick="openCourseDetails('data-structures')">
<img src="/static/image/algorithm/book_cover.png" alt="课程封面" class="course-image">
<div class="course-info">
<h3 class="course-name">数据结构与算法</h3>
<p class="course-description">深入学习数据结构和算法设计。</p>
</div>
</div>
<!-- 动态加载课程卡片 -->
{% for course in materials %}
<div class="course-card" onclick="openCourseDetails('{{ course._id }}')">
<img src="{{ course.image_url }}" alt="课程封面" class="course-image">
<div class="course-info">
<h3 class="course-name">{{ course.name }}</h3>
<p class="course-description">{{ course.description }}</p>
</div>
<div class="course-date">
<p class="course-date-text">创建时间:{{ course.created_at.strftime('%Y-%m-%d %H:%M:%S') }}</p>
<p class="course-date-text">更新时间:{{ course.updated_at.strftime('%Y-%m-%d %H:%M:%S') }}</p>
</div>
</div>
{% endfor %}
<div class="course-card add-course-card" onclick="openAddCourseModal()">
<div class="add-course-button">
<span>+</span>
</div>
</div>
</div>
</div>
<!-- 右侧滑出的课程目录 -->
<div id="courseDetails" class="course-details">
<div class="details-header">
<span id="course-title"></span>
<button class="close-btn" onclick="closeCourseDetails()">×</button>
</div>
<div class="details-content" id="details-content"></div>
<h3>课程章节列表:</h3>
<ul id="chapter-list">
<div id="loading-message">
<p>加载中...</p> <!-- 加载中效果 -->
</div>
</ul>
<button class="add-chapter-btn" onclick="showInputForNewChapter()">新增章节</button>
</div>
<!-- 编辑章节或课时弹窗 -->
<div id="editModal" class="edit-modal">
<div class="edit-modal-content">
<h3>编辑章节/课时</h3>
<form id="edit-form">
<label for="edit-title">标题:</label>
<input type="text" id="edit-title" name="title" required><br>
<label for="edit-description">描述:</label>
<textarea id="edit-description" name="description"></textarea><br>
<button type="submit">保存</button>
<button type="button" onclick="closeEditModal()">取消</button>
</form>
</div>
</div>
<!-- 新建课程的浮窗 -->
<div id="add-course-modal" class="modal">
<div class="modal-content">
<h2>新建课程</h2>
<div class="cover-image-container">
<div id="cover-image" class="cover-image-placeholder">
<span class="plus-sign">+</span>
<input type="file" id="cover-image-input" style="display: none;" accept="image/*" />
</div>
<img id="cover-preview" src="" alt="封面预览" style="display: none;" />
</div>
<form id="add-course-form">
<!-- 选择课程或新建课程的下拉框 -->
<label for="course-selection">从课程创建或新建课程:</label>
<select id="course-selection">
<option value="new">新建课程</option>
{% for course in courses %}
<option value="{{ course.id }}">{{ course.name }}</option>
{% endfor %}
</select>
<br><br>
<!-- 课程名称输入框 -->
<label for="course-name">课程名称:</label>
<input type="text" id="course-name" name="course-name" required><br><br>
<label for="course-description">课程描述:</label>
<textarea id="course-description" name="course-description"></textarea><br><br>
<div class="modal-buttons">
<button type="button" onclick="closeAddCourseModal()">取消</button>
<button type="submit">确认</button>
</div>
</form>
</div>
</div>
<script src="/static/js/teacherboard.js"></script>
</body>
</html>