diff --git a/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs b/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs
index 4b0c232c..200a646c 100644
--- a/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs
+++ b/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs
@@ -66,22 +66,6 @@ namespace CampusAppWP8.Pages.Mensa
#region Private
- ///
- /// Method calculate this day of the week, which its gets new menus
- ///
- /// Date of NewMenuWeekDay
- private DateTime CalcNewMenuWeekDay()
- {
- DateTime now = DateTime.Now;
- while (now.DayOfWeek != DayOfWeek.Monday)
- {
- now = now.Subtract(new TimeSpan(1, 0, 0, 0));
- }
-
- DateTime monday = new DateTime(now.Year, now.Month, now.Day);
- return monday;
- }
-
///
/// Method check if the last modification was later as the NewMenuWeekDay
///
@@ -89,7 +73,7 @@ namespace CampusAppWP8.Pages.Mensa
/// true, if is up-to-date, otherwise false
private bool CheckIsUpToDate(DateTime lastModified)
{
- int diff = lastModified.CompareTo(this.CalcNewMenuWeekDay());
+ int diff = lastModified.CompareTo(MenuWeekModel.CalcFirstWeekDay());
if (diff < 0)
{
diff --git a/CampusAppWP8/CampusAppWP8/model/mensa/MenuModel.cs b/CampusAppWP8/CampusAppWP8/model/mensa/MenuModel.cs
index ca53c12b..eece367a 100644
--- a/CampusAppWP8/CampusAppWP8/model/mensa/MenuModel.cs
+++ b/CampusAppWP8/CampusAppWP8/model/mensa/MenuModel.cs
@@ -23,22 +23,22 @@ namespace CampusAppWP8.Model.Mensa
/// Name for bio dinner
///
private string bio = AppResources.MensaApp_NotToday;
-
+
///
/// Name for 1. dinner
///
private string dinner1 = AppResources.MensaApp_NotToday;
-
+
///
/// Name for 2. dinner
///
private string dinner2 = AppResources.MensaApp_NotToday;
-
+
///
/// Name for 3. dinner
///
private string dinner3 = AppResources.MensaApp_NotToday;
-
+
///
/// Name for 4. dinner
///
@@ -49,6 +49,21 @@ namespace CampusAppWP8.Model.Mensa
///
private string action = AppResources.MensaApp_NotToday;
+ ///
+ /// Name of the day
+ ///
+ private string dayName;
+
+ ///
+ /// DateTime of the day
+ ///
+ private DateTime date;
+
+ ///
+ /// DateTime of the monday
+ ///
+ private DateTime monday;
+
#endregion
#region Constructor
@@ -58,6 +73,7 @@ namespace CampusAppWP8.Model.Mensa
///
public MenuModel()
{
+ this.monday = MenuWeekModel.CalcFirstWeekDay();
}
#endregion
@@ -68,7 +84,38 @@ namespace CampusAppWP8.Model.Mensa
/// Gets or sets the WeekDay
///
[XmlElement("Wochentag")]
- public string Day { get; set; }
+ public string Day
+ {
+ get
+ {
+ return this.dayName;
+ }
+
+ set
+ {
+ this.SetValue(value, ref this.dayName);
+ this.CalcDateOfDay();
+ }
+ }
+
+ ///
+ /// Gets or sets of Date
+ ///
+ public DateTime Date
+ {
+ get
+ {
+ return this.date;
+ }
+
+ set
+ {
+ if (value != this.date)
+ {
+ this.date = value;
+ }
+ }
+ }
///
/// Gets or sets dinner 1
@@ -189,6 +236,34 @@ namespace CampusAppWP8.Model.Mensa
property = StringManager.StripHTML(value);
}
}
+
+ ///
+ /// Method calculate the DateTime of the MenuDay
+ ///
+ private void CalcDateOfDay()
+ {
+ switch (this.dayName)
+ {
+ case "Montag":
+ this.date = this.monday;
+ break;
+ case "Diensttag":
+ this.date = this.monday.AddDays(1);
+ break;
+ case "Mittwoch":
+ this.date = this.monday.AddDays(2);
+ break;
+ case "Donnerstag":
+ this.date = this.monday.AddDays(3);
+ break;
+ case "Freitag":
+ this.date = this.monday.AddDays(4);
+ break;
+ default:
+ this.date = this.monday;
+ break;
+ }
+ }
#endregion
}
}
diff --git a/CampusAppWP8/CampusAppWP8/model/mensa/MenuWeekModel.cs b/CampusAppWP8/CampusAppWP8/model/mensa/MenuWeekModel.cs
index 08ff248b..4093eae8 100644
--- a/CampusAppWP8/CampusAppWP8/model/mensa/MenuWeekModel.cs
+++ b/CampusAppWP8/CampusAppWP8/model/mensa/MenuWeekModel.cs
@@ -17,6 +17,7 @@ namespace CampusAppWP8.Model.Mensa
[XmlRoot("root")]
public class MenuWeekModel
{
+ #region Members
///
/// Time when the model was created
///
@@ -30,6 +31,10 @@ namespace CampusAppWP8.Model.Mensa
this.createTime = DateTime.Now;
}
+ #endregion
+
+ #region Constructor
+
///
/// Gets or sets the menus for the week
///
@@ -37,6 +42,9 @@ namespace CampusAppWP8.Model.Mensa
[XmlArrayItem("Tagesmenu")]
public ObservableCollection Menus { get; set; }
+ #endregion
+
+ #region Proberty
///
/// Gets the creation time of the model
///
@@ -47,5 +55,27 @@ namespace CampusAppWP8.Model.Mensa
return this.createTime;
}
}
+
+ #endregion
+
+ #region Methods
+
+ ///
+ /// Method calculate this day of the week, which its gets new menus
+ ///
+ /// Date of NewMenuWeekDay
+ public static DateTime CalcFirstWeekDay()
+ {
+ DateTime now = DateTime.Now;
+ while (now.DayOfWeek != DayOfWeek.Monday)
+ {
+ now = now.Subtract(new TimeSpan(1, 0, 0, 0));
+ }
+
+ DateTime monday = new DateTime(now.Year, now.Month, now.Day);
+ return monday;
+ }
+
+ #endregion
}
}
diff --git a/CampusAppWP8/CampusAppWP8/pages/mensa/MensaPage.xaml b/CampusAppWP8/CampusAppWP8/pages/mensa/MensaPage.xaml
index 88e6dfa9..ab90cff2 100644
--- a/CampusAppWP8/CampusAppWP8/pages/mensa/MensaPage.xaml
+++ b/CampusAppWP8/CampusAppWP8/pages/mensa/MensaPage.xaml
@@ -24,7 +24,7 @@
-
+