Update Saqel Platform: 2026-09-02 00:55:56

This commit is contained in:
Hamza-Ayed
2026-09-02 00:55:56 +03:00
parent 1c0cd88a98
commit f4ab43d49a
18 changed files with 409 additions and 214 deletions
@@ -168,8 +168,8 @@ class GuardianRepository {
Future<List<GuardianChildModel>> getDashboardChildren() async {
final res = await _api.get(AppConfig.guardianDashboardEndpoint);
if (res is Map && res['data'] is List) {
return (res['data'] as List)
if (res is Map && res['data'] is Map && (res['data']['children'] is List)) {
return (res['data']['children'] as List)
.map((item) => GuardianChildModel.fromJson(Map<String, dynamic>.from(item)))
.toList();
}
@@ -137,4 +137,19 @@ class CurriculumRepository {
throw ApiException('فشل جلب بيانات تشغيل الدرس من الخادم');
}
Future<void> saveProgress({required int lessonId, required int positionSeconds, required int watchedSeconds}) async {
await _api.post('/api/student/lessons/$lessonId/progress', body: {
'position_seconds': positionSeconds,
'watched_seconds': watchedSeconds,
});
}
Future<void> submitCheckpoint({required int examId, required int questionId, required int optionId}) async {
await _api.post('/api/exams/$examId/submit', body: {
'answers': [
{'question_id': questionId, 'selected_option_id': optionId}
],
});
}
}