Files
hsa/Html/apps/templates/lesson.html
2025-12-12 16:58:27 +08:00

118 lines
4.8 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="/static/css/lesson.css">
<link rel="stylesheet" href="/static/css/helpTip.css">
<link rel="stylesheet" href="/static/css/teacher_course_setting.css">
<link rel="stylesheet" href="/static/css/lesson_setting.css">
<link rel="stylesheet" href="/static/css/modelinput.css">
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> -->
<link rel="stylesheet" href="/static/cdnback/all.min.css">
<!-- <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script> -->
<script src="/static/cdnback/axios.min.js"></script>
<script src="/static/js/modelinput.js"></script>
<!-- Markdown Editor (EasyMDE) -->
<!-- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/easymde/dist/easymde.min.css" /> -->
<link rel="stylesheet" href="/static/cdnback/easymde.min.css" />
<!-- <script src="https://cdn.jsdelivr.net/npm/easymde/dist/easymde.min.js"></script> -->
<script src="/static/cdnback/easymde.min.js"></script>
<!-- Markdown 渲染与安全 -->
<!-- <script src="https://cdn.jsdelivr.net/npm/markdown-it/dist/markdown-it.min.js"></script> -->
<script src="/static/cdnback/markdown-it.min.js"></script>
<!-- <script src="https://cdn.jsdelivr.net/npm/dompurify@3.1.7/dist/purify.min.js"></script> -->
<script src="/static/cdnback/purify.min.js"></script>
<link rel="stylesheet" href="/static/css/lesson_markdown.css">
</head>
<body >
{% include 'navbar.html' %} <!-- 引入navbar.html -->
<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">
<p>...</p> <!-- 加载覆盖 -->
</div>
<h3>课程章节列表:
<button id="toggle-reorder" class="reorder-btn" title="设置章节顺序" aria-pressed="false">
<i class="fa-solid fa-arrow-up-short-wide"></i>
</button>
</h3>
<ul id="chapter-list">
<div id="loading-message"><p>加载中...</p></div>
</ul>
<button class="add-chapter-btn" onclick="showInputForNewChapter()">新增章节</button>
</div>
<!-- 课时编辑页主体:左侧大纲 + 右侧编辑 -->
<div class="lesson-editor">
<aside class="outline">
<button id="toggle-outline-reorder" class="reorder-btn" title="排序模式" aria-pressed="false">
<i class="fa-solid fa-arrow-up-short-wide"></i>
</button>
<!-- 新增:删除模式按钮 -->
<button id="toggle-outline-delete" class="delete-btn" title="删除模式" aria-pressed="false">
<i class="fa-solid fa-trash-can"></i>
</button>
<ul id="outline-tree"></ul>
</aside>
<main class="editor-pane">
<div class="editor-tabs">
<button class="tab-btn active" data-target="tab-lesson" id="tab-btn-lesson">Lesson</button>
<button class="tab-btn" data-target="tab-prompt" id="tab-btn-prompt">Prompt</button>
<button class="tab-btn" data-target="tab-score" id="tab-btn-score">Score Prompt</button>
<div class="actions">
<button id="save-all-btn">保存全部</button>
</div>
</div>
<div class="tab-content">
<div id="tab-lesson" class="tab active">
<textarea id="editor-lesson" data-type="lesson"></textarea>
</div>
<div id="tab-prompt" class="tab">
<textarea id="editor-prompt" data-type="prompt"></textarea>
</div>
<div id="tab-score" class="tab">
<textarea id="editor-score" data-type="score"></textarea>
</div>
<aside class="md-preview-pane" id="md-preview">
<div style="color:#64748b">预览区域会实时渲染当前激活的编辑器内容…</div>
</aside>
</div>
</main>
</div>
<script src="/static/js/course_current.js"></script>
<script src="/static/js/teacherboard.js"></script>
<script src="/static/js/teacher_course_setting.js"></script>
<script src="/static/js/lesson_markdown.js"></script>
<script src="/static/js/helpTip.js"></script>
<script src="/static/js/lesson.js"></script>
<script>
window.lesson = {{ lesson|tojson|safe }};
window.chapter = {{ chapter|tojson|safe }};
window.material = {{ material|tojson|safe }};
console.log(window.lesson);
console.log(window.chapter);
console.log(window.material);
openCourseDetails(window.material.material_id);
</script>
</body>
</html>