Debug device tabs when receiving incompatible data from server
This commit is contained in:
@@ -168,10 +168,20 @@ func get_student_device(student_code: int) -> int:
|
||||
|
||||
func set_data_student_with_code(student_code: int, new_device_id: int, new_name: String, new_age: int, new_last_modified: String) -> void:
|
||||
update_student_device(student_code, new_device_id)
|
||||
if not students.has(new_device_id):
|
||||
students.set(new_device_id, [])
|
||||
var found: bool = false
|
||||
for student_data: StudentData in students[new_device_id]:
|
||||
if student_data.code == student_code:
|
||||
student_data.name = new_name
|
||||
student_data.age = new_age
|
||||
student_data.last_modified = new_last_modified
|
||||
return
|
||||
Log.error("TeacherSettings: Student %d not found to set data on it" % student_code)
|
||||
if not found:
|
||||
Log.warn("TeacherSettings: Student %d not found to set data on it. Creating new student data" % student_code)
|
||||
var new_student_data: StudentData = StudentData.new()
|
||||
new_student_data.code = student_code
|
||||
new_student_data.name = new_name
|
||||
new_student_data.age = new_age
|
||||
new_student_data.last_modified = new_last_modified
|
||||
students[new_device_id].append(new_student_data)
|
||||
|
||||
@@ -6,7 +6,7 @@ signal student_pressed(code: int)
|
||||
const STUDENT_PANEL_SCENE: PackedScene = preload("res://sources/menus/settings/student_panel.tscn")
|
||||
|
||||
@export var device_id: int
|
||||
@export var students: Array[StudentData] = []
|
||||
@export var students: Array = [] # Array[StudentData]. Not hard-typed because of an incompatibility in teacher_settings/refresh_devices_tabs
|
||||
|
||||
@onready var students_container: GridContainer = %StudentsContainer
|
||||
|
||||
@@ -27,9 +27,6 @@ func refresh() -> void:
|
||||
var student_panel: StudentPanel = STUDENT_PANEL_SCENE.instantiate()
|
||||
student_panel.student_count = student_count
|
||||
student_panel.student_data = student
|
||||
|
||||
student_panel.pressed.connect(func() -> void: student_pressed.emit(student.code))
|
||||
|
||||
students_container.add_child(student_panel)
|
||||
|
||||
student_count += 1
|
||||
|
||||
Reference in New Issue
Block a user