MCPcopy Create free account
hub / github.com/TimMcCool/scratchattach / classroom_alerts

Method classroom_alerts

scratchattach/site/session.py:418–447  ·  view source on GitHub ↗

Load and parse admin alerts, optionally for a specific class, using https://scratch.mit.edu/site-api/classrooms/alerts/ Returns: list[alert.EducatorAlert]: A list of parsed EducatorAlert objects

(
        self, _classroom: Optional[classroom.Classroom | int] = None, mode: str = "Last created", page: Optional[int] = None
    )

Source from the content-addressed store, hash-verified

416 )
417
418 def classroom_alerts(
419 self, _classroom: Optional[classroom.Classroom | int] = None, mode: str = "Last created", page: Optional[int] = None
420 ):
421 """
422 Load and parse admin alerts, optionally for a specific class, using https://scratch.mit.edu/site-api/classrooms/alerts/
423
424 Returns:
425 list[alert.EducatorAlert]: A list of parsed EducatorAlert objects
426 """
427
428 if isinstance(_classroom, classroom.Classroom):
429 _classroom = _classroom.id
430
431 if _classroom is None:
432 _classroom_str = ""
433 else:
434 _classroom_str = f"{_classroom}/"
435
436 ascsort, descsort = get_class_sort_mode(mode)
437
438 data = requests.get(
439 f"https://scratch.mit.edu/site-api/classrooms/alerts/{_classroom_str}",
440 params={"page": page, "ascsort": ascsort, "descsort": descsort},
441 headers=self._headers,
442 cookies=self._cookies,
443 ).json()
444
445 alerts = [alert.EducatorAlert.from_json(alert_data, self) for alert_data in data]
446
447 return alerts
448
449 def clear_messages(self):
450 """

Callers

nothing calls this directly

Calls 4

get_class_sort_modeFunction · 0.90
jsonMethod · 0.80
getMethod · 0.45
from_jsonMethod · 0.45

Tested by

no test coverage detected