added timespan-from-today relative appointment loading
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
//-----------------------------------------------------------------------
|
||||
namespace CampusAppWP8.Feed.TimeTable
|
||||
{
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
@@ -23,6 +24,8 @@ namespace CampusAppWP8.Feed.TimeTable
|
||||
/// <seealso cref="T:CampusAppWP8.Model.XmlModel{CampusAppWP8.Model.TimeTable.AppointmentListModel}"/>
|
||||
public class AppointmentFeed : XmlModel<AppointmentListModel>
|
||||
{
|
||||
private TimeSpan span = TimeSpan.Zero;
|
||||
|
||||
/// <summary> Initializes a new instance of the AppointmentFeed class. </summary>
|
||||
/// <remarks> Fiedler, 06.11.2013. </remarks>
|
||||
/// <param name="autoLoad"> (Optional) the automatic load. </param>
|
||||
@@ -39,6 +42,21 @@ namespace CampusAppWP8.Feed.TimeTable
|
||||
}
|
||||
}
|
||||
|
||||
public AppointmentFeed(TimeSpan span, bool autoLoad = true)
|
||||
: base(ModelType.File, Constants.FileAppointments_Name)
|
||||
{
|
||||
this.span = span;
|
||||
|
||||
this.IsFileUpToDateOnLoad += new IsFileUpToDate(this.CheckIsFileUpToDateOnLoad);
|
||||
this.IsFileUpToDateOnSave += new IsFileUpToDate(this.CheckIsFileUpToDateOnSave);
|
||||
this.IsModelUpToDateOnLoad += new IsModelUpToDate(this.CheckIsModelUpToDate);
|
||||
|
||||
if (autoLoad == true)
|
||||
{
|
||||
this.LoadData();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary> Check is model up to date. </summary>
|
||||
/// <remarks> Fiedler, 06.11.2013. </remarks>
|
||||
/// <param name="model"> The model. </param>
|
||||
@@ -113,7 +131,17 @@ namespace CampusAppWP8.Feed.TimeTable
|
||||
|
||||
AppointmentModel newAppModel = new AppointmentModel(appStr[i]);
|
||||
|
||||
this.Model.Appointments.Add(newAppModel);
|
||||
if (this.span.Equals(TimeSpan.Zero))
|
||||
{
|
||||
this.Model.Appointments.Add(newAppModel);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (newAppModel.IsDate(DateTime.Today, this.span.Days) >= 0)
|
||||
{
|
||||
this.Model.Appointments.Add(newAppModel);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -276,6 +276,7 @@
|
||||
<shell:ApplicationBarMenuItem Text="Setting3" Click="ApplicationBarMenuItem3_Click"/>
|
||||
<shell:ApplicationBarMenuItem Text="Setting4" Click="ApplicationBarMenuItem4_Click"/>
|
||||
<shell:ApplicationBarMenuItem Text="Setting4" Click="ApplicationBarMenuItem5_Click"/>
|
||||
<shell:ApplicationBarMenuItem Text="Setting5" Click="ApplicationBarMenuItem_Click_1"/>
|
||||
</shell:ApplicationBar.MenuItems>
|
||||
</shell:ApplicationBar>
|
||||
</phone:PhoneApplicationPage.ApplicationBar>
|
||||
|
||||
@@ -17,6 +17,7 @@ namespace CampusAppWP8.Pages
|
||||
using CampusAppWP8.Feed.Utility;
|
||||
using CampusAppWP8.File.Places;
|
||||
using CampusAppWP8.Model.Setting;
|
||||
using CampusAppWP8.Pages.TimeTable;
|
||||
using CampusAppWP8.Resources;
|
||||
using CampusAppWP8.Utility;
|
||||
using CampusAppWP8.Utility.Lui.MessageBoxes;
|
||||
@@ -58,6 +59,7 @@ namespace CampusAppWP8.Pages
|
||||
ApplicationBarMenuItem menuItem3 = ApplicationBar.MenuItems[2] as ApplicationBarMenuItem;
|
||||
ApplicationBarMenuItem menuItem4 = ApplicationBar.MenuItems[3] as ApplicationBarMenuItem;
|
||||
ApplicationBarMenuItem menuItem5 = ApplicationBar.MenuItems[4] as ApplicationBarMenuItem;
|
||||
ApplicationBarMenuItem menuItem6 = ApplicationBar.MenuItems[5] as ApplicationBarMenuItem;
|
||||
|
||||
if (menuItem1 != null)
|
||||
{
|
||||
@@ -85,10 +87,22 @@ namespace CampusAppWP8.Pages
|
||||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
ApplicationBar.MenuItems.RemoveAt(ApplicationBar.MenuItems.Count - 1);
|
||||
ApplicationBar.MenuItems.RemoveAt(ApplicationBar.MenuItems.Count - 1);
|
||||
*/
|
||||
ApplicationBar.MenuItems.Remove(menuItem3);
|
||||
ApplicationBar.MenuItems.Remove(menuItem4);
|
||||
}
|
||||
|
||||
if (menuItem6 != null)
|
||||
{
|
||||
menuItem6.Text = AppResources.TimeTableApp_Title;
|
||||
}
|
||||
|
||||
TimeTable.TimeTable.InitFeed();
|
||||
|
||||
|
||||
if (!Settings.AppSetting.InitApp)
|
||||
{
|
||||
this.InitPlaceFile();
|
||||
@@ -462,6 +476,12 @@ namespace CampusAppWP8.Pages
|
||||
|
||||
#endregion
|
||||
|
||||
private void ApplicationBarMenuItem_Click_1(object sender, EventArgs e)
|
||||
{
|
||||
Uri url = new Uri(Constants.PathTimeTable_Day, UriKind.Relative);
|
||||
NavigationService.Navigate(url);
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -68,9 +68,21 @@ namespace CampusAppWP8.Pages.TimeTable
|
||||
/// <remarks> Fiedler, 06.11.2013. </remarks>
|
||||
public static void InitFeed()
|
||||
{
|
||||
if(TimeTable.feed == null)
|
||||
TimeTable.InitFeed(TimeSpan.Zero);
|
||||
}
|
||||
|
||||
public static void InitFeed(TimeSpan span)
|
||||
{
|
||||
if (TimeTable.feed == null)
|
||||
{
|
||||
TimeTable.feed = new AppointmentFeed(false);
|
||||
if (span.Equals(TimeSpan.Zero))
|
||||
{
|
||||
TimeTable.feed = new AppointmentFeed(false);
|
||||
}
|
||||
else
|
||||
{
|
||||
TimeTable.feed = new AppointmentFeed(span, false);
|
||||
}
|
||||
TimeTable.feed.OnFailedFile += new CampusAppWPortalLib8.Model.AbstractMainModel<AppointmentListModel>.OnFailed(TimeTable.OnLoadFailed);
|
||||
TimeTable.feed.LoadData();
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<Capability Name="ID_CAP_SPEECH_RECOGNITION" />
|
||||
</Capabilities>
|
||||
<Tasks>
|
||||
<DefaultTask Name="_default" NavigationPage="Pages/TimeTable/TimeTableWeek.xaml" />
|
||||
<DefaultTask Name="_default" NavigationPage="Pages/StartPage.xaml" />
|
||||
</Tasks>
|
||||
<Tokens>
|
||||
<PrimaryToken TokenID="CampusAppWP8Token" TaskName="_default">
|
||||
|
||||
Reference in New Issue
Block a user