예제 #1
0
        public async Task <DidacticsResponse> GetDidacticsAsync(bool roamResult)
        {
            string requestUri = string.Format(DIDACTICS_URL, authResponse.UserID);

            HttpContent httpContent = await SendRequestAsync(HttpMethod.Get, requestUri, null);

            DidacticsResponse response = JsonConvert.DeserializeObject <DidacticsResponse>(await httpContent.ReadAsStringAsync());

            AccountDetails.DidacticsItems.Clear();
            AccountDetails.DidacticsItems.AddRange(PrepareDidacticts(response.Didactics));

            if (roamResult)
            {
                ResourceExtensions.StoreRoamingObject(BackgroundTaskExtensions.DIDACTICS, response.Didactics.Count);
            }

            return(response);
        }
예제 #2
0
        public async Task <NoticeboardResponse> GetNoticeboardAsync(bool roamResult)
        {
            string requestUri = string.Format(NOTICEBOARD_URL, authResponse.UserID);

            HttpContent httpContent = await SendRequestAsync(HttpMethod.Get, requestUri, null);

            NoticeboardResponse response = JsonConvert.DeserializeObject <NoticeboardResponse>(await httpContent.ReadAsStringAsync());

            AccountDetails.NoticeboardItems.Clear();
            AccountDetails.NoticeboardItems = new ObservableCollection <Item>(response.Items);

            if (roamResult)
            {
                ResourceExtensions.StoreRoamingObject(BackgroundTaskExtensions.ITEMS, response.Items.Count);
            }

            return(response);
        }
예제 #3
0
        public async Task <AbsenceResponse> GetAbsencesAsync(bool roamResult)
        {
            string requestUri = string.Format(ABSENCES_URL, authResponse.UserID);

            HttpContent httpContent = await SendRequestAsync(HttpMethod.Get, requestUri, null);

            AbsenceResponse response = JsonConvert.DeserializeObject <AbsenceResponse>(await httpContent.ReadAsStringAsync());

            AccountDetails.AbsenceEvents.Clear();
            AccountDetails.AbsenceEvents.AddRange(response.Events);

            if (roamResult)
            {
                ResourceExtensions.StoreRoamingObject(BackgroundTaskExtensions.EVENTS, 0);
            }

            return(response);
        }
예제 #4
0
        public async Task <GradesResponse> GetGradesAsync(bool roamResult)
        {
            string requestUri = string.Format(GRADES_URL, authResponse.UserID);

            HttpContent httpContent = await SendRequestAsync(HttpMethod.Get, requestUri, null);

            GradesResponse response = JsonConvert.DeserializeObject <GradesResponse>(await httpContent.ReadAsStringAsync());

            AccountDetails.Grades.Clear();
            AccountDetails.Grades.AddRange(response.Grades);

            PrepareGrades(response.Grades);

            if (roamResult)
            {
                ResourceExtensions.StoreRoamingObject(BackgroundTaskExtensions.GRADES, response.Grades.Count);
            }

            return(response);
        }
예제 #5
0
        public async Task <NotesResponse> GetNotesAsync(bool roamResult)
        {
            string requestUri = string.Format(NOTES_URL, authResponse.UserID);

            HttpContent httpContent = await SendRequestAsync(HttpMethod.Get, requestUri, null);

            NotesResponse response = JsonConvert.DeserializeObject <NotesResponse>(await httpContent.ReadAsStringAsync());

            AccountDetails.Notes.Clear();
            AccountDetails.Notes.AddRange(response.NTCL);
            AccountDetails.Notes.AddRange(response.NTST);
            AccountDetails.Notes.AddRange(response.NTTE);
            AccountDetails.Notes.AddRange(response.NTWN);

            if (roamResult)
            {
                ResourceExtensions.StoreRoamingObject(BackgroundTaskExtensions.NOTES, AccountDetails.Notes.Count);
            }

            return(response);
        }
예제 #6
0
        public async Task <AgendaResponse> GetAgendaAsync(bool roamResult)
        {
            string startingDate = DateTimeExtensions.StartingSchoolDate.ToString("yyyyMMdd");
            string endingDate   = DateTimeExtensions.EndingSchoolDate.ToString("yyyyMMdd");

            string requestUri = string.Format(AGENDA_URL, authResponse.UserID, startingDate, endingDate);

            HttpContent httpContent = await SendRequestAsync(HttpMethod.Get, requestUri, null);

            AgendaResponse response = JsonConvert.DeserializeObject <AgendaResponse>(await httpContent.ReadAsStringAsync());

            AccountDetails.AgendaEvents.Clear();
            AccountDetails.AgendaEvents.AddRange(response.Appointments);

            if (roamResult)
            {
                ResourceExtensions.StoreRoamingObject(BackgroundTaskExtensions.APPOINTMENTS, response.Appointments.Count);
            }

            return(response);
        }