diff --git a/CampusAppWP8/CampusAppWP8/Model/MainModel.cs b/CampusAppWP8/CampusAppWP8/Model/MainModel.cs index b36d20e2..9e5f85af 100644 --- a/CampusAppWP8/CampusAppWP8/Model/MainModel.cs +++ b/CampusAppWP8/CampusAppWP8/Model/MainModel.cs @@ -313,10 +313,13 @@ namespace CampusAppWP8 /// /// Save the model data if necessary. /// - public void SaveData() + /// force saving. DEFAULT: false + public void SaveData(bool force = false) { if ((this.file != null) - && ((this.isFileUpToDateOnSave == null) || (this.isFileUpToDateOnSave(this.model, this.file.GetFileInfo()) == false))) + && ((this.isFileUpToDateOnSave == null) + || (this.isFileUpToDateOnSave(this.model, this.file.GetFileInfo()) == false) + || (force == true))) { if (this.onSaving != null) { @@ -324,6 +327,7 @@ namespace CampusAppWP8 } byte[] data = this.SerializeModel(); + string test = Encoding.UTF8.GetString(data, 0, data.Length); this.file.WriteFile(data); if (this.onSaved != null) diff --git a/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursModel.cs b/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursModel.cs index 77d3a16a..530d9220 100644 --- a/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursModel.cs +++ b/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursModel.cs @@ -28,9 +28,7 @@ namespace CampusAppWP8.Model.Openinghours /// /// Gets or sets feed information item list. /// - [XmlArray("data")] - [XmlArrayItem("institution")] - public ObservableCollection institutions { get; set; } + private ObservableCollection institutions; #endregion @@ -41,6 +39,7 @@ namespace CampusAppWP8.Model.Openinghours /// public OpeninghoursModel() { + this.institutions = new ObservableCollection(); this.createTime = DateTime.Now; } @@ -62,18 +61,21 @@ namespace CampusAppWP8.Model.Openinghours /// /// Gets the Institutions. /// + [XmlArray("data")] + [XmlArrayItem("institution")] public ObservableCollection Institutions { get { return this.institutions; } + + set + { + this.institutions = value; + } } #endregion - - #region Method - - #endregion } } diff --git a/CampusAppWP8/CampusAppWP8/Pages/Openinghours/OpeninghoursPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Openinghours/OpeninghoursPage.xaml.cs index 48da50e3..b16206ed 100644 --- a/CampusAppWP8/CampusAppWP8/Pages/Openinghours/OpeninghoursPage.xaml.cs +++ b/CampusAppWP8/CampusAppWP8/Pages/Openinghours/OpeninghoursPage.xaml.cs @@ -34,7 +34,13 @@ namespace CampusAppWP8.Pages.Openinghours public OpeninghoursPage() { this.InitializeComponent(); - this.InitializeFeed(); + + if (this.feed == null) + { + this.feed = new OpeninghoursFeed(); + this.feed.onLoaded += new OpeninghoursFeed.OnLoaded(this.FeedIsReady); + this.feed.LoadData(); + } } #endregion @@ -50,17 +56,12 @@ namespace CampusAppWP8.Pages.Openinghours protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); - if (this.feed == null) - { - this.InitializeFeed(); - } - + /* if (e.NavigationMode != System.Windows.Navigation.NavigationMode.Back) { this.ProgressBar.Visibility = System.Windows.Visibility.Visible; } - - this.feed.LoadData(); + */ } /// @@ -77,22 +78,14 @@ namespace CampusAppWP8.Pages.Openinghours #region private - /// - /// Initialize the opening hours feed. - /// - private void InitializeFeed() - { - this.feed = new OpeninghoursFeed(); - this.feed.onLoaded += new OpeninghoursFeed.OnLoaded(this.FeedIsReady); - } - /// /// Will be execute if the feed is ready. /// private void FeedIsReady() { this.SetupInstitutionList(); - this.ProgressBar.Visibility = System.Windows.Visibility.Collapsed; + //this.ProgressBar.Visibility = System.Windows.Visibility.Collapsed; + //this.feed.SaveData(true); } /// @@ -111,7 +104,7 @@ namespace CampusAppWP8.Pages.Openinghours /// event args private void OpenHoursForceUpdate_Click(object sender, EventArgs e) { - this.ProgressBar.Visibility = System.Windows.Visibility.Visible; + //this.ProgressBar.Visibility = System.Windows.Visibility.Visible; this.feed.ForceWebUpdate(); } // private