get method

Future<Week> get(
  1. int year,
  2. int week, {
  3. Week? debugWeek,
})

Implementation

Future<Week> get(int year, int week, {Week? debugWeek}) async {
  if (student.demo) {
    var faker = Faker.instance;
    var now = DateTime.now();
    return Week(
        days: [
          Day(informations: [
            "Something happens"
          ], events: [
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: "Prøve i differentialligninger",
                team: "Matematik",
                teachers: [],
                room: "10",
                id: "fefef",
                note: "",
                start: now.copyWith(hour: 8, minute: 15),
                end: now.copyWith(hour: 9, minute: 30),
                hasHomework: true,
                hasNote: true,
                teacherObjs: [],
                teamObjs: []),
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: "Prøve i differentialregning",
                team: "Matematik",
                teachers: [],
                room: "10",
                id: "fefef",
                note: "",
                start: now.copyWith(hour: 9, minute: 35),
                end: now.copyWith(hour: 11, minute: 00),
                hasHomework: true,
                hasNote: true,
                teacherObjs: [],
                teamObjs: []),
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: "Camus",
                team: "Dansk",
                teachers: [],
                room: "19",
                id: "fefef",
                note: "",
                start: now.copyWith(hour: 11, minute: 05),
                end: now.copyWith(hour: 12, minute: 30),
                hasHomework: true,
                hasNote: true,
                teacherObjs: [],
                teamObjs: []),
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: "Eksistentialisme",
                team: "Dansk",
                teachers: [],
                room: "19",
                id: "fefef",
                note: "",
                start: now.copyWith(hour: 13, minute: 05),
                end: now.copyWith(hour: 14, minute: 30),
                hasHomework: true,
                hasNote: true,
                teacherObjs: [],
                teamObjs: []),
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: "Danmark som kolonimagt i Afrika",
                team: "Historie",
                teachers: [],
                room: "21",
                id: "fefef",
                note: "",
                start: now.copyWith(hour: 14, minute: 35),
                end: now.copyWith(hour: 16, minute: 00),
                hasHomework: true,
                hasNote: true,
                teacherObjs: [],
                teamObjs: []),
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: "Delprøve 1.5",
                team: "Spansk",
                teachers: [],
                room: "19",
                id: "fefef",
                note: "",
                start: now.copyWith(hour: 16, minute: 05),
                end: now.copyWith(hour: 17, minute: 30),
                hasHomework: true,
                hasNote: true,
                teacherObjs: [],
                teamObjs: []),
          ], date: DateTime.now()),
          Day(informations: [
            "Something happens"
          ], events: [
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: faker.name.jobType(),
                team: faker.name.title(),
                teachers: [],
                room: "2",
                id: "",
                note: "",
                start: faker.date.past(null),
                end: faker.date.past(null),
                hasHomework: false,
                hasNote: false,
                teacherObjs: [],
                teamObjs: [])
          ], date: DateTime.now()),
          Day(informations: [
            "Something happens"
          ], events: [
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: faker.name.jobType(),
                team: faker.name.title(),
                teachers: [],
                room: "2",
                id: "",
                note: "",
                start: faker.date.past(null),
                end: faker.date.past(null),
                hasHomework: false,
                hasNote: false,
                teacherObjs: [],
                teamObjs: [])
          ], date: DateTime.now()),
          Day(informations: [
            "Something happens"
          ], events: [
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: faker.name.jobType(),
                team: faker.name.title(),
                teachers: [],
                room: "2",
                id: "",
                note: "",
                start: faker.date.past(null),
                end: faker.date.past(null),
                hasHomework: false,
                hasNote: false,
                teacherObjs: [],
                teamObjs: [])
          ], date: DateTime.now()),
          Day(informations: [
            "Something happens"
          ], events: [
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: faker.name.jobType(),
                team: faker.name.title(),
                teachers: [],
                room: "2",
                id: "",
                note: "",
                start: faker.date.past(null),
                end: faker.date.past(null),
                hasHomework: false,
                hasNote: false,
                teacherObjs: [],
                teamObjs: [])
          ], date: DateTime.now()),
          Day(informations: [
            "Something happens"
          ], events: [
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: faker.name.jobType(),
                team: faker.name.title(),
                teachers: [],
                room: "2",
                id: "",
                note: "",
                start: faker.date.past(null),
                end: faker.date.past(null),
                hasHomework: false,
                hasNote: false,
                teacherObjs: [],
                teamObjs: [])
          ], date: DateTime.now()),
          Day(informations: [
            "Something happens"
          ], events: [
            CalendarEvent(
                type: CalendarEventType.regular,
                status: "Uændret",
                title: faker.name.jobType(),
                team: faker.name.title(),
                teachers: [],
                room: "2",
                id: "",
                note: "",
                start: faker.date.past(null),
                end: faker.date.past(null),
                hasHomework: false,
                hasNote: false,
                teacherObjs: [],
                teamObjs: [])
          ], date: DateTime.now())
        ],
        weekNum: week,
        modulRanges: []);
  }
  if (debugWeek != null) {
    return debugWeek;
  }
  var url = student.buildUrl(
      "SkemaNy.aspx?${student.teacher ? "laererid" : "elevid"}=${student.studentId}&week=${intFixed(week, 2)}$year");
  var response = await request(url);
  return await extractCalendar(BeautifulSoup(response.data), year, week);
}