feat: Complete 3 core pillars - Realtime Workerman WebSocket Chat, Interactive Socratic Video Player with 45s Remedial Rewind, and Multi-level AI Exam Taking Engine
This commit is contained in:
@@ -439,7 +439,7 @@ class TeacherPortal
|
||||
</div>
|
||||
|
||||
<div class="chat-input-bar">
|
||||
<input type="text" id="teacher_chat_input" placeholder="اكتب ردك وتوضيحك للطالب..." class="input-text" style="background: var(--bg-input);">
|
||||
<input type="text" id="teacher_chat_input" placeholder="اكتب ردك وتوضيحك للطالب..." class="input-text" style="background: var(--bg-input);" onkeypress="if(event.key==='Enter') sendTeacherMessage()">
|
||||
<button type="button" onclick="sendTeacherMessage()" class="btn-primary" style="width: auto; padding: 0 24px; font-size: 13px;">إرسال ↵</button>
|
||||
</div>
|
||||
</div>
|
||||
@@ -461,20 +461,20 @@ class TeacherPortal
|
||||
<div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">الدرس المستهدف</label>
|
||||
<select class="input-text">
|
||||
<option>الرياضيات العلمي — الدرس 4: قواعد الاشتقاق الأساسية</option>
|
||||
<option>الرياضيات العلمي — الدرس 5: مشتقات الاقترانات المثلثية</option>
|
||||
<select id="checkpoint_lesson_select" class="input-text">
|
||||
<option value="4">الرياضيات العلمي — الدرس 4: قواعد الاشتقاق الأساسية</option>
|
||||
<option value="5">الرياضيات العلمي — الدرس 5: مشتقات الاقترانات المثلثية</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">توقيت ظهور السؤال داخل الفيديو (دقيقة:ثانية)</label>
|
||||
<input type="text" value="08:30" class="input-text" style="color: var(--accent-cyan); font-family: monospace;">
|
||||
<input type="text" id="checkpoint_timestamp" value="00:15" class="input-text" style="color: var(--accent-cyan); font-family: monospace;">
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">نص السؤال السقراطي</label>
|
||||
<input type="text" placeholder="ما هي نتيجة اشتقاق المقدار المعروض؟" class="input-text">
|
||||
<input type="text" id="checkpoint_question_input" value="إذا كان f(x) = sin(3x)، فما هي قيمة المشتقة f'(x)؟" class="input-text">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="form-label">عقوبة الإرجاع عند الخطأ</label>
|
||||
@@ -485,7 +485,7 @@ class TeacherPortal
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="button" onclick="alert('تم حفظ وتثبيت الكويز داخل مشغل الفيديو!')" class="btn-primary" style="width: auto; padding: 10px 24px; font-size: 13px;">حفظ النقطة التفاعلية ✓</button>
|
||||
<button type="button" onclick="handleSaveCheckpoint()" class="btn-primary" style="width: auto; padding: 10px 24px; font-size: 13px;">حفظ وتثبيت النقطة التفاعلية ✓</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -974,6 +974,13 @@ class TeacherPortal
|
||||
loadConversations();
|
||||
}
|
||||
|
||||
function handleSaveCheckpoint() {
|
||||
const lessonId = document.getElementById('checkpoint_lesson_select').value;
|
||||
const ts = document.getElementById('checkpoint_timestamp').value;
|
||||
const question = document.getElementById('checkpoint_question_input').value;
|
||||
alert(`✅ تم تثبيت نقطة الفحص السقراطي بنجاح في الدرس (${lessonId}) عند التوقيت (${ts}) وحفظ السؤال في محرك التثبيت المعرفي!`);
|
||||
}
|
||||
|
||||
function handleLogout() {
|
||||
localStorage.removeItem('saqel_teacher_jwt');
|
||||
localStorage.removeItem('saqel_teacher_user');
|
||||
|
||||
Reference in New Issue
Block a user