diff --git a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj
index 075d64a7..38929d61 100644
--- a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj
+++ b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj
@@ -158,6 +158,9 @@
+
+ DefaultHeader.xaml
+
@@ -402,6 +405,10 @@
Designer
MSBuild:Compile
+
+ Designer
+ MSBuild:Compile
+
diff --git a/CampusAppWP8/CampusAppWP8/Model/Lecture/LectureWp8Activity.cs b/CampusAppWP8/CampusAppWP8/Model/Lecture/LectureWp8Activity.cs
index d68c2c0e..a0a3eb0e 100644
--- a/CampusAppWP8/CampusAppWP8/Model/Lecture/LectureWp8Activity.cs
+++ b/CampusAppWP8/CampusAppWP8/Model/Lecture/LectureWp8Activity.cs
@@ -8,7 +8,9 @@
namespace CampusAppWP8.Model.Lecture
{
using CampusAppWP8.Resources;
+ using CampusAppWP8.Utility;
using CampusAppWPortalLib8.Model.Lecture;
+ using System.Xml.Serialization;
///
/// Model for a Activity
@@ -34,6 +36,26 @@ namespace CampusAppWP8.Model.Lecture
return this.iconUrl;
}
}
+
+ ///
+ /// Gets or sets the topic of the Lecture
+ ///
+ [XmlElement("lehrinhalt")]
+ public new string Topic
+ {
+ get
+ {
+ return base.Topic;
+ }
+
+ set
+ {
+ if (value != this.Topic)
+ {
+ base.Topic = Wp8StringManager.StripAndDecodeHTML(value);
+ }
+ }
+ }
#endregion
#region Methods
diff --git a/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursInstitutionWp8Model.cs b/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursInstitutionWp8Model.cs
index 077ee869..7c4cfb96 100644
--- a/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursInstitutionWp8Model.cs
+++ b/CampusAppWP8/CampusAppWP8/Model/Openinghours/OpeninghoursInstitutionWp8Model.cs
@@ -11,13 +11,13 @@ namespace CampusAppWP8.Model.Openinghours
using System.Globalization;
using System.Windows;
using System.Xml.Serialization;
-
+
///
/// Model for menu
///
public class OpeninghoursInstitutionWp8Model : CampusAppWPortalLib8.Model.Openinghours.OpeninghoursInstitutionModel
{
- #region Property
+ #region Property
///
/// Gets the visibility state of the monday TextBlock.
@@ -152,5 +152,5 @@ namespace CampusAppWP8.Model.Openinghours
}
#endregion
- }
+ }
}
diff --git a/CampusAppWP8/CampusAppWP8/Model/Person/PersonListWp8Model.cs b/CampusAppWP8/CampusAppWP8/Model/Person/PersonListWp8Model.cs
index 474f3fea..4a95dcb9 100644
--- a/CampusAppWP8/CampusAppWP8/Model/Person/PersonListWp8Model.cs
+++ b/CampusAppWP8/CampusAppWP8/Model/Person/PersonListWp8Model.cs
@@ -10,6 +10,7 @@ namespace CampusAppWP8.Model.Person
{
using System.Xml.Serialization;
using CampusAppWPortalLib8.Model.Person;
+ using System.Collections.Generic;
/// Person list model.
/// Stubbfel, 05.09.2013.
@@ -25,5 +26,25 @@ namespace CampusAppWP8.Model.Person
IPersonModel tmpPerson = base.GetPerson(id);
return tmpPerson as PersonWp8Model;
}
+
+
+ /// Removes the non function person.
+ /// Stubbfel, 05.09.2013.
+ public override void RemoveNonFunctionPerson()
+ {
+ List removeList = new List();
+ foreach (PersonWp8Model tmpPerson in this.Persons)
+ {
+ if (tmpPerson.Functions.Count < 1)
+ {
+ removeList.Add(tmpPerson);
+ }
+ }
+
+ foreach (PersonWp8Model removePerson in removeList)
+ {
+ this.Persons.Remove(removePerson);
+ }
+ }
}
}
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentFavoritePage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentFavoritePage.xaml.cs
index f45eb0cb..e79b9981 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentFavoritePage.xaml.cs
+++ b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentFavoritePage.xaml.cs
@@ -180,7 +180,7 @@ namespace CampusAppWP8.Pages.Departments
FrameworkElement infoBtn = sender as FrameworkElement;
string chairName = ((this.lastClickedBtn as Button).Content as TextBlock).Text.ToString();
- NavigationService.Navigate(new Uri(Constants.PathDepartment_DepartmentInfoPage + "?url=" + infoBtn.Tag.ToString() + "&name=" + chairName, UriKind.Relative));
+ NavigationService.Navigate(new Uri(Constants.PathDepartment_DepartmentInfoPage + "?" + Constants.ParamUrl + "=" + infoBtn.Tag.ToString() + "&" + Constants.ParamName + "=" + chairName, UriKind.Relative));
}
#endregion
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentIndexPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentIndexPage.xaml.cs
index cfdf92f8..e06cd045 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentIndexPage.xaml.cs
+++ b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentIndexPage.xaml.cs
@@ -47,16 +47,7 @@ namespace CampusAppWP8.Pages.Departments
this.progressBar.Visibility = Visibility.Visible;
//// init feed objects
- if (DepartmentIndexPage.feed == null)
- {
- DepartmentIndexPage.feed = new DepartmentFeed(false);
- }
-
- DepartmentIndexPage.feed.OnLoaded += new DepartmentFeed.OnIO(this.SetupFacultyList);
- DepartmentIndexPage.feed.OnFailedWeb += new DepartmentFeed.OnFailed(this.FeedIsFailedWeb);
- DepartmentIndexPage.feed.OnFailedFile += new DepartmentFeed.OnFailed(this.FeedIsFailedFile);
-
- DepartmentIndexPage.feed.LoadData(Utilities.GetLoadModus());
+ DepartmentIndexPage.InitFeed(this.SetupFacultyList, this.FeedIsFailedWeb, this.FeedIsFailedFile);
if (DepartmentIndexPage.favorite == null)
{
@@ -83,10 +74,7 @@ namespace CampusAppWP8.Pages.Departments
set
{
- if (value != DepartmentIndexPage.feed)
- {
- DepartmentIndexPage.feed = value;
- }
+ DepartmentIndexPage.feed = value;
}
}
@@ -179,6 +167,26 @@ namespace CampusAppWP8.Pages.Departments
{
}
+ ///
+ /// Initialize the feed objects and load the data.
+ ///
+ public static void InitFeed(DepartmentFeed.OnIO onLoaded = null, DepartmentFeed.OnIO failedWeb = null, DepartmentFeed.OnIO failedFile = null)
+ {
+ if (DepartmentIndexPage.feed == null)
+ {
+ DepartmentIndexPage.feed = new DepartmentFeed(false);
+ }
+
+ if(onLoaded != null)
+ DepartmentIndexPage.feed.OnLoaded += new DepartmentFeed.OnIO(onLoaded);
+ if(failedWeb != null)
+ DepartmentIndexPage.feed.OnFailedWeb += new DepartmentFeed.OnFailed(failedWeb);
+ if(failedFile != null)
+ DepartmentIndexPage.feed.OnFailedFile += new DepartmentFeed.OnFailed(failedFile);
+
+ DepartmentIndexPage.feed.LoadData(Utilities.GetLoadModus());
+ }
+
///
/// Setup the faculty list.
///
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentInfoPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentInfoPage.xaml.cs
index f9c98b98..d1ce5ab0 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentInfoPage.xaml.cs
+++ b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentInfoPage.xaml.cs
@@ -8,14 +8,23 @@
namespace CampusAppWP8.Pages.Departments
{
using System;
+ using System.Windows;
+ using System.Collections.Generic;
+ using System.Collections.ObjectModel;
using System.Windows.Navigation;
using Microsoft.Phone.Controls;
+ using CampusAppWP8.Resources;
+ using CampusAppWPortalLib8.Model.Departments;
///
/// Info page of a chair.
///
public partial class DepartmentInfoPage : PhoneApplicationPage
{
+ private bool feedLoadedFlag = false;
+
+ private string chairName = string.Empty;
+
#region Constructor
///
@@ -41,15 +50,32 @@ namespace CampusAppWP8.Pages.Departments
{
base.OnNavigatedTo(e);
- string url = string.Empty;
- string chairName = string.Empty;
+ this.feedLoadedFlag = false;
- if (NavigationContext.QueryString.TryGetValue("url", out url)
- && NavigationContext.QueryString.TryGetValue("name", out chairName))
+ string url = string.Empty;
+
+ if(NavigationContext.QueryString.TryGetValue(Constants.ParamName, out this.chairName))
+ {
+ this.PageHeadline.Text = this.chairName;
+ }
+
+ if (NavigationContext.QueryString.TryGetValue(Constants.ParamUrl, out url))
{
- this.PageHeadline.Text = chairName;
this.WebBrowser.Navigate(new Uri(url, UriKind.Absolute));
}
+ else
+ {
+ CampusAppWP8.Feed.Departments.DepartmentFeed temp = DepartmentIndexPage.Feed;
+
+ if (temp != null)
+ {
+ this.OnFeedReady();
+ }
+ else
+ {
+ DepartmentIndexPage.InitFeed(this.OnFeedReady);
+ }
+ }
}
#endregion
@@ -64,6 +90,53 @@ namespace CampusAppWP8.Pages.Departments
private void PhoneApplicationPage_OrientationChanged(object sender, OrientationChangedEventArgs e)
{
}
+
+ ///
+ /// On feed ready.
+ ///
+ private void OnFeedReady()
+ {
+ if (this.feedLoadedFlag == false)
+ {
+ this.feedLoadedFlag = true;
+ DepartmentIndexPage.Feed.OnLoaded -= this.OnFeedReady;
+
+ ChairModel chair = null;
+ ObservableCollection tempModelList = DepartmentIndexPage.GetFeed().Model.Faculties;
+
+ foreach (CampusAppWPortalLib8.Model.Departments.FacultyModel model in tempModelList)
+ {
+ if (chair == null)
+ {
+ chair = model.GetChairModel(this.chairName);
+ }
+ }
+
+ if (chair != null)
+ {
+ this.WebBrowser.Navigate(new Uri(chair.Url, UriKind.Absolute));
+ }
+ else
+ {
+ MessageBoxResult res = MessageBox.Show(AppResources.DepartmentNotFound + " " + AppResources.DepartmentForwarding, string.Empty, MessageBoxButton.OKCancel);
+
+ switch (res)
+ {
+ case MessageBoxResult.OK:
+ {
+ NavigationService.Navigate(new Uri(Constants.PathDepartment_DepartmentIndexPage, UriKind.Relative));
+ }
+ break;
+ case MessageBoxResult.Cancel:
+ {
+ NavigationService.GoBack();
+ }
+ break;
+ }
+ }
+ }
+ }
+
#endregion
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentPage.xaml.cs
index 1dd9291d..e4e34bbb 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentPage.xaml.cs
+++ b/CampusAppWP8/CampusAppWP8/Pages/Departments/DepartmentPage.xaml.cs
@@ -205,7 +205,7 @@ namespace CampusAppWP8.Pages.Departments
FrameworkElement infoBtn = sender as FrameworkElement;
string chairName = ((this.lastClickedBtn as Button).Content as TextBlock).Text.ToString();
- NavigationService.Navigate(new Uri(Constants.PathDepartment_DepartmentInfoPage + "?url=" + infoBtn.Tag.ToString() + "&name=" + chairName, UriKind.Relative));
+ NavigationService.Navigate(new Uri(Constants.PathDepartment_DepartmentInfoPage + "?" + Constants.ParamUrl + "=" + infoBtn.Tag.ToString() + "&" + Constants.ParamName + "=" + chairName, UriKind.Relative));
}
#endregion
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml b/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml
index 0aac8c25..059d98f6 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml
+++ b/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml
@@ -7,6 +7,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:lui="clr-namespace:CampusAppWP8.Utility.Lui.Button"
+ xmlns:header="clr-namespace:CampusAppWP8.Utility.Lui.Header"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
@@ -23,10 +24,13 @@
+
+
@@ -39,7 +43,15 @@
-
+
+
+
+
+
+
+
+
+
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml.cs
index 73f8b349..b9ec7697 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml.cs
+++ b/CampusAppWP8/CampusAppWP8/Pages/Events/EventIndexPage.xaml.cs
@@ -125,6 +125,26 @@ namespace CampusAppWP8.Pages.Events
base.OnNavigatedFrom(e);
}
+ ///
+ /// Methods overrides the OnOrientationChanged-Method.
+ ///
+ /// orientation changed event args.
+ protected override void OnOrientationChanged(OrientationChangedEventArgs e)
+ {
+ if (e.Orientation == PageOrientation.Landscape
+ || e.Orientation == PageOrientation.LandscapeLeft
+ || e.Orientation == PageOrientation.LandscapeRight)
+ {
+ ApplicationBar.Mode = ApplicationBarMode.Default;
+ }
+ else
+ {
+ ApplicationBar.Mode = ApplicationBarMode.Minimized;
+ }
+
+ base.OnOrientationChanged(e);
+ }
+
#endregion
#region private
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml b/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml
index fbc0b384..b8d10f80 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml
+++ b/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml
@@ -34,13 +34,13 @@
-
+
-
+
-
+
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml.cs
index c2b20c99..e13fbe5c 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml.cs
+++ b/CampusAppWP8/CampusAppWP8/Pages/Events/EventPage.xaml.cs
@@ -21,7 +21,7 @@ namespace CampusAppWP8.Pages.Events
using CampusAppWPortalLib8.Model.RSS;
///
- /// EventPage, where every event fees has his own PivotItem.
+ /// EventPage, where every event feed has his own PivotItem.
///
public partial class EventPage : PhoneApplicationPage
{
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Exams/Exams.xaml b/CampusAppWP8/CampusAppWP8/Pages/Exams/Exams.xaml
index b46de0a3..cdc12571 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Exams/Exams.xaml
+++ b/CampusAppWP8/CampusAppWP8/Pages/Exams/Exams.xaml
@@ -7,6 +7,7 @@
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:lui="clr-namespace:CampusAppWP8.Utility.Lui.Button"
+ xmlns:header="clr-namespace:CampusAppWP8.Utility.Lui.Header"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
@@ -16,9 +17,23 @@
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+