Exams.xaml.cs CampusAppWP8::Pages::Exams::Exams CampusAppWP8::Pages::Exams //<copyrightfile="Exams.xaml.cs"company="BTU/IIT"> //Companycopyrighttag. //</copyright> //<author>stubbfel</author> //<sience>02.09.2013</sience> //---------------------------------------------------------------------- namespaceCampusAppWP8.Pages.Exams { usingSystem.Linq; usingSystem.Windows; usingSystem.Windows.Controls; usingSystem.Windows.Navigation; usingCampusAppWP8.Feed.Exams; usingCampusAppWP8.File.Exams; usingCampusAppWP8.Resources; usingCampusAppWP8.Utility; usingCampusAppWP8.Utility.Lui.MessageBoxes; usingMicrosoft.Phone.Controls; publicpartialclassExams:PhoneApplicationPage { #regionMember privateExamFeedfeed; privateExamFilefile; #endregion #regionConstructor publicExams() { this.InitializeComponent(); this.BachelorItem.Header=CampusAppWPortalLib8.Resources.AppResources.Degree_Bachelor; this.MasterItem.Header=CampusAppWPortalLib8.Resources.AppResources.Degree_Master; this.DiplomItem.Header=CampusAppWPortalLib8.Resources.AppResources.Degree_Diploma; this.DefHeader.ProgressVisibility=Visibility.Visible; this.InitializeFeed(); } #endregion #regionMethod #regionprotected protectedoverridevoidOnNavigatedTo(NavigationEventArgse) { base.OnNavigatedTo(e); if(this.feed==null) { this.InitializeFeed(); } this.feed.LoadData(Utilities.GetLoadModus<Model.Exams.ExamListWp8Model>()); } protectedoverridevoidOnNavigatedFrom(NavigationEventArgse) { if(NavigationMode.Back==e.NavigationMode) { App.SaveToIsolatedStorage<int>(Constants.ExamPageModelKey,-1); this.feed.SaveData(); } else { App.SaveToIsolatedStorage<int>(Constants.ExamPageModelKey,this.ExamPivot.SelectedIndex); } } #endregion #regionprivate privatevoidInitializeFeed() { this.feed=newExamFeed(); this.feed.OnLoaded+=newExamFeed.OnIO(this.FeedIsReady); this.feed.OnFailedWeb+=newExamFeed.OnFailed(this.FeedIsFailWeb); this.feed.OnFailedFile+=newExamFeed.OnFailed(this.FeedIsFailFile); } privatevoidFeedIsReady() { this.SetupExamList(); this.DefHeader.ProgressVisibility=Visibility.Collapsed; } privatevoidLaunchPDFReader() { this.DefHeader.ProgressVisibility=Visibility.Collapsed; this.file.SaveAndLaunchFile(); } privatevoidSetupExamList() { varbachelorList=fromexaminthis.feed.Model.Exams whereexam.DegreeNumber.Equals(((int)CampusAppWPortalLib8.Model.Settings.DegreeType.BACHELOR).ToString()) orderbyexam.CourseText,exam.Version selectexam; varmasterList=fromexaminthis.feed.Model.Exams whereexam.DegreeNumber.Equals(((int)CampusAppWPortalLib8.Model.Settings.DegreeType.MASTER).ToString()) orderbyexam.CourseText,exam.Version selectexam; vardiplomaList=fromexaminthis.feed.Model.Exams whereexam.DegreeNumber.Equals(((int)CampusAppWPortalLib8.Model.Settings.DegreeType.DIPLOM).ToString()) orderbyexam.CourseText,exam.Version selectexam; this.BachelorPanel.ItemsSource=bachelorList; this.MasterPanel.ItemsSource=masterList; this.DiplomaPanel.ItemsSource=diplomaList; this.ExamPivot.SelectedIndex=this.CalcSelectedIndex(); } privateintCalcSelectedIndex() { intresult=App.LoadFromIsolatedStorage<int>(Constants.ExamPageModelKey); if(result<0||result>2) { CampusAppWPortalLib8.Model.Settings.DegreeTypedegree=Settings.UserProfil.Degree; switch(degree) { caseCampusAppWPortalLib8.Model.Settings.DegreeType.BACHELOR: result=0; break; caseCampusAppWPortalLib8.Model.Settings.DegreeType.MASTER: result=1; break; caseCampusAppWPortalLib8.Model.Settings.DegreeType.DIPLOM: result=2; break; default: result=0; break; } } returnresult; } privatevoidFeedIsFailWeb() { MessageBoxResultresult=MessageBoxes.ShowMainModelErrorMessageBox(AppResources.MsgBox_ErrorMainModelLoadWeb); this.feed.ForceReadFile(); } privatevoidFeedIsFailFile() { MessageBoxResultresult=MessageBoxes.ShowMainModelErrorMessageBox(AppResources.MsgBox_ErrorMainModelLoadFile); this.DefHeader.ProgressVisibility=Visibility.Collapsed; } privatevoidButton_Click(objectsender,RoutedEventArgse) { Buttonbutton=senderasButton; if(button==null) { return; } stringurl=button.Tagasstring; if(url==null) { return; } //createfilename string[]filenames=url.Split('/'); stringfilename=url; if(filenames.Length>0) { filename=filenames[filenames.Length-1]; } this.file=newExamFile(filename,url); this.file.OnLoaded+=newExamFile.OnIO(this.LaunchPDFReader); this.file.OnFailedWeb+=newExamFile.OnFailed(this.FeedIsFailWeb); this.file.OnFailedFile+=newExamFile.OnFailed(this.FeedIsFailFile); this.file.LoadData(); this.DefHeader.ProgressVisibility=Visibility.Visible; } #endregion #endregion } }