fix: changed canvas api login_id
This commit is contained in:
parent
b64ef1198e
commit
082169ed1b
|
|
@ -39,8 +39,19 @@ class Canvas:
|
||||||
student.name = (
|
student.name = (
|
||||||
re.sub(r"[^\x00-\x7F]+", "", student.name).strip().title()
|
re.sub(r"[^\x00-\x7F]+", "", student.name).strip().title()
|
||||||
) # We only care english name
|
) # We only care english name
|
||||||
|
# Some users (like system users, announcers) might not have login_id
|
||||||
|
if hasattr(student, 'login_id') and student.login_id:
|
||||||
student.sis_id = student.login_id
|
student.sis_id = student.login_id
|
||||||
student.login_id = student.email.split("@")[0]
|
student.login_id = student.email.split("@")[0]
|
||||||
|
else:
|
||||||
|
# For users without login_id, use email prefix as both sis_id and login_id
|
||||||
|
if hasattr(student, 'email') and student.email:
|
||||||
|
student.login_id = student.email.split("@")[0]
|
||||||
|
student.sis_id = student.login_id
|
||||||
|
else:
|
||||||
|
# Fallback for users without email
|
||||||
|
student.login_id = f"user_{student.id}"
|
||||||
|
student.sis_id = student.login_id
|
||||||
return student
|
return student
|
||||||
|
|
||||||
self.students = [
|
self.students = [
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user