diff --git a/CampusAppWP8/CampusAppWP8/App.xaml.cs b/CampusAppWP8/CampusAppWP8/App.xaml.cs index 12dd2832..55c47531 100644 --- a/CampusAppWP8/CampusAppWP8/App.xaml.cs +++ b/CampusAppWP8/CampusAppWP8/App.xaml.cs @@ -152,7 +152,15 @@ namespace CampusAppWP8 this.UserSettingsLoaded(); - Settings.AppSetting.UniNetwork = Utilities.IsUniNetworkAvailable(); + Settings.AppSetting.UniNetwork = Utilities.IsUniNetworkAvailable(); + if (!Settings.AppSetting.UniNetwork) + { + Settings.AppSetting.WifiEnable = Utilities.IsWifiAvailable(); + } + else + { + Settings.AppSetting.WifiEnable = true; + } if (Settings.AppSetting.GeoWatchEnable) { diff --git a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj index 45ea5c51..b86cead6 100644 --- a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj +++ b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj @@ -483,6 +483,9 @@ + + + + - + + + + diff --git a/CampusAppWP8/CampusAppWP8/Pages/Setting/AppSettingPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Setting/AppSettingPage.xaml.cs index a7d851b7..a3406e04 100644 --- a/CampusAppWP8/CampusAppWP8/Pages/Setting/AppSettingPage.xaml.cs +++ b/CampusAppWP8/CampusAppWP8/Pages/Setting/AppSettingPage.xaml.cs @@ -22,6 +22,7 @@ namespace CampusAppWP8.Pages.Setting { this.InitializeComponent(); GeoWatchToggle.IsChecked = Settings.AppSetting.GeoWatchEnable; + OnlyWiFiToggle.IsChecked = Settings.AppSetting.OnlyWifi; } /// @@ -33,6 +34,7 @@ namespace CampusAppWP8.Pages.Setting if (NavigationMode.Back == e.NavigationMode) { Settings.AppSetting.GeoWatchEnable = GeoWatchToggle.IsChecked.Value; + Settings.AppSetting.OnlyWifi = OnlyWiFiToggle.IsChecked.Value; } } } diff --git a/CampusAppWP8/CampusAppWP8/Pages/StudentCouncil/StudentCouncilPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/StudentCouncil/StudentCouncilPage.xaml.cs index 2e548d4f..63523e6f 100644 --- a/CampusAppWP8/CampusAppWP8/Pages/StudentCouncil/StudentCouncilPage.xaml.cs +++ b/CampusAppWP8/CampusAppWP8/Pages/StudentCouncil/StudentCouncilPage.xaml.cs @@ -14,6 +14,7 @@ namespace CampusAppWP8.Pages.StudentCouncil using CampusAppWP8.Resources; using CampusAppWP8.Utility.Lui.MessageBoxes; using Microsoft.Phone.Controls; + using CampusAppWP8.Utility; /// /// Class for the StudentCouncilPage @@ -59,7 +60,7 @@ namespace CampusAppWP8.Pages.StudentCouncil } this.ProgressBar.Visibility = System.Windows.Visibility.Visible; - this.feed.LoadData(); + this.feed.LoadData(Utilities.getLoadModus()); } /// diff --git a/CampusAppWP8/CampusAppWP8/Resources/AppResources.Designer.cs b/CampusAppWP8/CampusAppWP8/Resources/AppResources.Designer.cs index 7b79160f..9d229538 100644 --- a/CampusAppWP8/CampusAppWP8/Resources/AppResources.Designer.cs +++ b/CampusAppWP8/CampusAppWP8/Resources/AppResources.Designer.cs @@ -771,6 +771,15 @@ namespace CampusAppWP8.Resources { } } + /// + /// Sucht eine lokalisierte Zeichenfolge, die Nur mit Wlan laden ähnelt. + /// + public static string Setting_AppOnlyWifi { + get { + return ResourceManager.GetString("Setting_AppOnlyWifi", resourceCulture); + } + } + /// /// Sucht eine lokalisierte Zeichenfolge, die Mitarbeiter ähnelt. /// diff --git a/CampusAppWP8/CampusAppWP8/Resources/AppResources.resx b/CampusAppWP8/CampusAppWP8/Resources/AppResources.resx index db84d97c..0f2c1050 100644 --- a/CampusAppWP8/CampusAppWP8/Resources/AppResources.resx +++ b/CampusAppWP8/CampusAppWP8/Resources/AppResources.resx @@ -416,4 +416,7 @@ vorlesen + + Nur mit Wlan laden + \ No newline at end of file diff --git a/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs b/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs index b0390c1f..e8d7a953 100644 --- a/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs +++ b/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs @@ -87,6 +87,15 @@ namespace CampusAppWP8.Resources { } } + /// + /// Sucht eine lokalisierte Zeichenfolge, die OnlyWifi ähnelt. + /// + public static string AppSetting_OnlyWifi { + get { + return ResourceManager.GetString("AppSetting_OnlyWifi", resourceCulture); + } + } + /// /// Sucht eine lokalisierte Zeichenfolge, die UniNet ähnelt. /// @@ -114,6 +123,15 @@ namespace CampusAppWP8.Resources { } } + /// + /// Sucht eine lokalisierte Zeichenfolge, die WifiEnable ähnelt. + /// + public static string AppSetting_WifiEnable { + get { + return ResourceManager.GetString("AppSetting_WifiEnable", resourceCulture); + } + } + /// /// Sucht eine lokalisierte Zeichenfolge, die DepartmentFavoriteFeed.xml ähnelt. /// diff --git a/CampusAppWP8/CampusAppWP8/Resources/Constants.resx b/CampusAppWP8/CampusAppWP8/Resources/Constants.resx index f7928283..00beecb5 100644 --- a/CampusAppWP8/CampusAppWP8/Resources/Constants.resx +++ b/CampusAppWP8/CampusAppWP8/Resources/Constants.resx @@ -426,4 +426,10 @@ 802.1X + + WifiEnable + + + OnlyWifi + \ No newline at end of file diff --git a/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs b/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs index 8cb72693..b5543dd9 100644 --- a/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs +++ b/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs @@ -12,14 +12,11 @@ namespace CampusAppWP8.Utility using System.Device.Location; using System.Globalization; using System.Linq; - using System.Runtime.InteropServices.WindowsRuntime; using System.Threading; using System.Windows; using System.Windows.Controls; using System.Windows.Media; using CampusAppWP8.Resources; - using CampusAppWP8.Utility.NDEF; - using Windows.Networking.Proximity; using Microsoft.Phone.Net.NetworkInformation; /// @@ -288,7 +285,7 @@ namespace CampusAppWP8.Utility } } - /// Query if the phon is in the uni network. Method compares only Networkname and Description! + /// Query if the phone is in the uni network. Method compares only Networkname and Description! /// Stubbfel, 26.08.2013. /// true if uni networkavailable, false if not. public static bool IsUniNetworkAvailable() @@ -299,12 +296,47 @@ namespace CampusAppWP8.Utility if (networkInterfaceInfo.InterfaceType == NetworkInterfaceType.Wireless80211 && networkInterfaceInfo.InterfaceSubtype == NetworkInterfaceSubType.WiFi && networkInterfaceInfo.InterfaceName.Equals(Constants.AppSetting_UniNetworkName) - && networkInterfaceInfo.Description.Equals(Constants.AppSetting_UniNetworkDesc)) + && networkInterfaceInfo.Description.Equals(Constants.AppSetting_UniNetworkDesc) + && networkInterfaceInfo.InterfaceState == ConnectState.Connected) { return true; } } return false; } + + /// Queries if a wifik is available. + /// Stubbfel, 26.08.2013. + /// true if a wifik is available, false if not. + public static bool IsWifiAvailable() + { + NetworkInterfaceList networkInterfaceList = new NetworkInterfaceList(); + foreach (NetworkInterfaceInfo networkInterfaceInfo in networkInterfaceList) + { + if (networkInterfaceInfo.InterfaceType == NetworkInterfaceType.Wireless80211 + && networkInterfaceInfo.InterfaceSubtype == NetworkInterfaceSubType.WiFi + && networkInterfaceInfo.InterfaceState == ConnectState.Connected) + { + return true; + } + } + return false; + } + + /// Gets load modus. Is check if the only Wifi option is active + /// Stubbfel, 27.08.2013. + /// Generic type parameter. + /// The load modus< t> + public static MainModel.ForceType getLoadModus() + { + if (Settings.AppSetting.OnlyWifi && !Settings.AppSetting.WifiEnable) + { + return MainModel.ForceType.FORCE_FILE; + } + else + { + return MainModel.ForceType.INVALID; + } + } } } \ No newline at end of file