protected async Task RefreshTimetables(int semester) { MyDB DB = new MyDB(); if (CrossConnectivity.Current.IsConnected) { try { App_activity_indicator.IsVisible = true; App_activity_indicator.IsRunning = true; string webaddress = Libraries.MobileConfig.GetWebAddress(Application.Current.Properties["campus"].ToString()) + string.Format("DataFinder.aspx?dataFormat=personaltimetable&code={0}&acad={1}&sem={2}&system={3}", Application.Current.Properties["userno"], txt_year.SelectedItem.ToString(), semester, txt_system.SelectedItem.ToString()); _client.Timeout = TimeSpan.Parse("00:00:15"); var content = await _client.GetStringAsync(webaddress); var n = JsonConvert.DeserializeObject <List <Model.TimetableModel> >(content); List <Model.TimetableModel> TT_data = new List <Model.TimetableModel>(n); if (TT_data.Count > 0) { DB.resetTimetables(txt_year.SelectedItem.ToString(), txt_semester.SelectedItem.ToString()); DB.AddTimetables(content, txt_year.SelectedItem.ToString(), txt_semester.SelectedItem.ToString()); } else { DB.resetTimetables(txt_year.SelectedItem.ToString(), txt_semester.SelectedItem.ToString()); lv_timetable.ItemsSource = null; } App_activity_indicator.IsVisible = false; App_activity_indicator.IsRunning = false; } catch (Exception ex) { await DisplayAlert("Error!", "" + ex.Message, "OK"); DB.resetTimetables(txt_year.SelectedItem.ToString(), txt_semester.SelectedItem.ToString()); lv_timetable.ItemsSource = null; App_activity_indicator.IsVisible = false; App_activity_indicator.IsRunning = false; } } else { await DisplayAlert("Warning", "No Internet Connection", "OK"); } var list = JsonConvert.DeserializeObject <List <Model.TimetableModel> >(DB.GetAllTimetables(txt_year.SelectedItem.ToString(), txt_semester.SelectedItem.ToString())); List <Model.TimetableModel> display_data = new List <Model.TimetableModel>(list); lv_timetable.ItemsSource = display_data; }
protected async void RefreshTimetables(int Sem) { MyDB DB = new MyDB(); if (CrossConnectivity.Current.IsConnected) { try { App_activity_indicator.IsVisible = true; App_activity_indicator.IsRunning = true; string webaddress = Libraries.MobileConfig.GetWebAddress(Application.Current.Properties["campus"].ToString()) + string.Format("DataFinder.aspx?dataFormat=personaltimetable&code={0}&acad={1}&sem={2}&system={3}", Application.Current.Properties["userno"], acad_year, Sem, study_sys); _client.Timeout = TimeSpan.Parse("00:00:15"); var content = await _client.GetStringAsync(webaddress); //await DisplayAlert("Error!", ""+ content, "OK"); var n = JsonConvert.DeserializeObject <List <Model.TimetableModel> >(content); List <Model.TimetableModel> TT_data = new List <Model.TimetableModel>(n); if (TT_data.Count > 0) { DB.resetTimetables(acad_year, semester); DB.AddTimetables(content, acad_year, semester); } else { DB.resetTimetables(acad_year, semester); txtclass.ItemsSource = null; } App_activity_indicator.IsVisible = false; App_activity_indicator.IsRunning = false; } catch (Exception ex) { await DisplayAlert("Error!", "" + ex.Message, "OK"); DB.resetTimetables(acad_year, semester); txtclass.ItemsSource = null; App_activity_indicator.IsVisible = false; App_activity_indicator.IsRunning = false; } } else { await DisplayAlert("Warning", "No Internet Connection", "OK"); } var list = JsonConvert.DeserializeObject <List <TimetableModel> >(DB.GetAllTimetables(acad_year, semester)); List <TimetableModel> display_data = new List <TimetableModel>(list); List <TimetableModel> combo_data = new List <TimetableModel>(); foreach (TimetableModel item in display_data) { TimetableModel a = new TimetableModel(); a.SID = item.SID; a.duration = string.Format("{0} - {2} {1}", item.course_name, item.duration, item.lecture_day); a.lecture_day = item.lecture_day; combo_data.Add(a); } txtclass.ItemsSource = combo_data; }