mobile app admin_base admin_contests admin_dashboard chat contest_detail exam_create exam_detail exam_grade exam_list profile themes
This commit is contained in:
@@ -51,11 +51,11 @@
|
||||
<a href="{{ url_for('contest_question_bank', contest_id=contest.id) }}" class="btn-outline-futuristic px-6 py-2 font-medium">
|
||||
题库管理
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if is_owner %}
|
||||
<a href="{{ url_for('exam_create', contest_id=contest.id) }}" class="btn-outline-futuristic px-6 py-2 font-medium">
|
||||
创建考试
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if is_owner %}
|
||||
<a href="{{ url_for('admin_teacher_applications') }}" class="btn-outline-futuristic px-6 py-2 font-medium">
|
||||
审批老师申请
|
||||
</a>
|
||||
@@ -239,6 +239,7 @@
|
||||
const CONTEST_ID = {{ contest.id }};
|
||||
let canPost = {{ (can_post is defined and can_post) | lower }};
|
||||
const isOwner = {{ (is_owner is defined and is_owner) | lower }};
|
||||
const isMember = {{ (is_member is defined and is_member) | lower }};
|
||||
|
||||
// 报名切换
|
||||
async function toggleRegistration(contestId) {
|
||||
@@ -387,8 +388,9 @@ async function loadExams() {
|
||||
</div>
|
||||
<div class="text-xs text-slate-400 mt-1">${e.subject ? e.subject + ' · ' : ''}满分${e.total_score}分${e.duration ? ' · ' + e.duration + '分钟' : ''}</div>
|
||||
</div>
|
||||
<div class="flex items-center ml-3 shrink-0">
|
||||
<div class="flex items-center gap-2 ml-3 shrink-0">
|
||||
<a href="/exams/${e.id}" class="px-3 py-1 text-xs font-medium text-cyan-400 border border-primary rounded hover:bg-blue-50">进入考试</a>
|
||||
${isMember ? `<a href="/exams/${e.id}/submissions" class="px-3 py-1 text-xs font-medium text-amber-500 border border-amber-400 rounded hover:bg-amber-50">批改</a>` : ''}
|
||||
${removeBtn}
|
||||
</div>
|
||||
</div>`;
|
||||
|
||||
Reference in New Issue
Block a user