diff --git a/CampusAppWP8/CampusAppWP8/Api/GeoApi/CampusSpsApi.cs b/CampusAppWP8/CampusAppWP8/Api/GeoApi/CampusSpsApi.cs
new file mode 100644
index 00000000..06311c97
--- /dev/null
+++ b/CampusAppWP8/CampusAppWP8/Api/GeoApi/CampusSpsApi.cs
@@ -0,0 +1,75 @@
+//-----------------------------------------------------------------------
+//
+// Company copyright tag.
+//
+// stubbfel
+// 12.08.2013
+//----------------------------------------------------------------------
+namespace CampusAppWP8.Feed.GeoApi
+{
+ using System;
+ using System.Collections.Generic;
+ using CampusAppWP8.Model;
+ using CampusAppWP8.Model.GeoDb;
+ using CampusAppWP8.Model.Utility;
+ using CampusAppWP8.Resources;
+ using CampusAppWP8.Utility;
+
+ ///
+ /// Class for SPSAPI
+ ///
+ public class CampusSpsApi : SpsApi
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public CampusSpsApi()
+ : base()
+ {
+ }
+
+ ///
+ /// Method set the UriParameter of a campusRequest for a given latitude and longitude
+ ///
+ /// latitude parameter
+ /// longitude parameter
+ public void SetupCampusRequest(string lat, string log)
+ {
+ this.SetupPlaceRequest(lat, log, Constants.SpsApi_CampusDomain);
+ }
+
+ ///
+ /// Method set the UriParameter of a campusRequest for the actualPosition
+ ///
+ public void SetupCurrentCampusRequest()
+ {
+ Utilities.DetermineAndStoreCurrentPosition();
+ string lat = App.LoadFromAppState(Constants.GeoWatch_CurrentPosition_Lat);
+ string log = App.LoadFromAppState(Constants.GeoWatch_CurrentPosition_Long);
+ this.SetupCampusRequest(lat, log);
+ }
+
+ ///
+ /// Method return the campus of the placeList
+ ///
+ /// actual campus
+ public CampusAppWP8.Model.Setting.UserProfilModel.Campus GetCampus()
+ {
+ if (this.Model == null)
+ {
+ return Settings.UserProfil.DefaultCampus;
+ }
+
+ CampusAppWP8.Model.Setting.UserProfilModel.Campus campus;
+ foreach (PlaceModel place in this.Model.Places)
+ {
+ if (Enum.TryParse(place.PlaceId, true, out campus))
+ {
+ return campus;
+ }
+ }
+
+ return Settings.UserProfil.DefaultCampus;
+ }
+ }
+}
diff --git a/CampusAppWP8/CampusAppWP8/Api/GeoApi/SpsApi.cs b/CampusAppWP8/CampusAppWP8/Api/GeoApi/SpsApi.cs
index 92592730..7972517f 100644
--- a/CampusAppWP8/CampusAppWP8/Api/GeoApi/SpsApi.cs
+++ b/CampusAppWP8/CampusAppWP8/Api/GeoApi/SpsApi.cs
@@ -29,51 +29,22 @@ namespace CampusAppWP8.Feed.GeoApi
}
///
- /// Method set the UriParameter of a campusRequest for a given latitude and longitude
+ /// Method set the UriParameter of a placeRequest for a given latitude and longitude
///
- /// latitude parameter
- /// longitude parameter
- public void SetupCampusRequest(string lat, string log)
+ /// latitude of the place
+ /// longitude of the place
+ /// request domain
+ public void SetupPlaceRequest(string lat, string log, string domian = null)
{
List parameterList = new List();
- parameterList.Add(new CleanUrlParamModel("latitude", lat));
- parameterList.Add(new CleanUrlParamModel("longitude", log));
- parameterList.Add(new CleanUrlParamModel("domain", "3"));
+ parameterList.Add(new CleanUrlParamModel(Constants.SpsApi_LatitudeParaKey, lat));
+ parameterList.Add(new CleanUrlParamModel(Constants.SpsApi_LongitudeParaKey, log));
+ if (domian != null)
+ {
+ parameterList.Add(new CleanUrlParamModel(Constants.SpsApi_DomainParaKey, domian));
+ }
+
this.SetUriParams(parameterList);
}
-
- ///
- /// Method set the UriParameter of a campusRequest for the actualPosition
- ///
- public void SetupCurrentCampusRequest()
- {
- Utilities.DetermineAndStoreCurrentPosition();
- string lat = App.LoadFromAppState(Constants.GeoWatch_CurrentPosition_Lat);
- string log = App.LoadFromAppState(Constants.GeoWatch_CurrentPosition_Long);
- this.SetupCampusRequest(lat, log);
- }
-
- ///
- /// Method return the campus of the placeList
- ///
- /// actual campus
- public CampusAppWP8.Model.Setting.UserProfilModel.Campus GetCampus()
- {
- if (this.Model == null)
- {
- return Settings.UserProfil.DefaultCampus;
- }
-
- CampusAppWP8.Model.Setting.UserProfilModel.Campus campus;
- foreach (PlaceModel place in this.Model.Places)
- {
- if (Enum.TryParse(place.PlaceId, true, out campus))
- {
- return campus;
- }
- }
-
- return Settings.UserProfil.DefaultCampus;
- }
}
}
diff --git a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj
index 941581ca..a85ec411 100644
--- a/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj
+++ b/CampusAppWP8/CampusAppWP8/CampusAppWP8.csproj
@@ -93,6 +93,7 @@
4
+
App.xaml
@@ -439,13 +440,15 @@
..\packages\BuiltToRoam.Core.Agent.1.0.1.5\lib\sl4-wp71\AsyncCtpLibrary_Phone.dll
False
- global2
+ global
..\packages\BuiltToRoam.Core.Agent.1.0.1.5\lib\sl4-wp71\BuiltToRoam.Core.Agent.dll
+ global
..\packages\BuiltToRoam.GeoWatcher.1.0.1.5\lib\sl4-wp71\BuiltToRoam.GeoWatcher.dll
+ global
diff --git a/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs b/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs
index 362fe248..950fc50e 100644
--- a/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs
+++ b/CampusAppWP8/CampusAppWP8/Feed/Mensa/MensaFeed.cs
@@ -11,7 +11,6 @@ namespace CampusAppWP8.Feed.Mensa
using System.IO;
using CampusAppWP8.Model;
using CampusAppWP8.Model.Mensa;
- using CampusAppWP8.Resources;
///
/// This Class is for MensaFeeds
diff --git a/CampusAppWP8/CampusAppWP8/Pages/Mensa/MensaPage.xaml.cs b/CampusAppWP8/CampusAppWP8/Pages/Mensa/MensaPage.xaml.cs
index 181d2ed1..da74254d 100644
--- a/CampusAppWP8/CampusAppWP8/Pages/Mensa/MensaPage.xaml.cs
+++ b/CampusAppWP8/CampusAppWP8/Pages/Mensa/MensaPage.xaml.cs
@@ -43,7 +43,7 @@ namespace CampusAppWP8.Pages.Mensa
///
/// API for Localization
///
- private SpsApi spsApi;
+ private CampusSpsApi campusApi;
///
/// Flag for forcing webLoad
@@ -96,7 +96,7 @@ namespace CampusAppWP8.Pages.Mensa
///
private void SpsApiIsReady()
{
- this.InitializeFeed(this.spsApi.GetCampus());
+ this.InitializeFeed(this.campusApi.GetCampus());
}
///
@@ -104,10 +104,10 @@ namespace CampusAppWP8.Pages.Mensa
///
private void DeterminCurrentCampusAndLoadFeed()
{
- this.spsApi = new SpsApi();
- this.spsApi.onLoaded += new SpsApi.OnLoaded(this.SpsApiIsReady);
- this.spsApi.SetupCurrentCampusRequest();
- this.spsApi.LoadData();
+ this.campusApi = new CampusSpsApi();
+ this.campusApi.onLoaded += new SpsApi.OnLoaded(this.SpsApiIsReady);
+ this.campusApi.SetupCurrentCampusRequest();
+ this.campusApi.LoadData();
}
///
diff --git a/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs b/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs
index aa28477a..865e17fb 100644
--- a/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs
+++ b/CampusAppWP8/CampusAppWP8/Resources/Constants.Designer.cs
@@ -654,6 +654,42 @@ namespace CampusAppWP8.Resources {
}
}
+ ///
+ /// Sucht eine lokalisierte Zeichenfolge, die 3 ähnelt.
+ ///
+ public static string SpsApi_CampusDomain {
+ get {
+ return ResourceManager.GetString("SpsApi_CampusDomain", resourceCulture);
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Zeichenfolge, die domain ähnelt.
+ ///
+ public static string SpsApi_DomainParaKey {
+ get {
+ return ResourceManager.GetString("SpsApi_DomainParaKey", resourceCulture);
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Zeichenfolge, die latitude ähnelt.
+ ///
+ public static string SpsApi_LatitudeParaKey {
+ get {
+ return ResourceManager.GetString("SpsApi_LatitudeParaKey", resourceCulture);
+ }
+ }
+
+ ///
+ /// Sucht eine lokalisierte Zeichenfolge, die longitude ähnelt.
+ ///
+ public static string SpsApi_LongitudeParaKey {
+ get {
+ return ResourceManager.GetString("SpsApi_LongitudeParaKey", resourceCulture);
+ }
+ }
+
///
/// Sucht eine lokalisierte Zeichenfolge, die ToggleContent ähnelt.
///
diff --git a/CampusAppWP8/CampusAppWP8/Resources/Constants.resx b/CampusAppWP8/CampusAppWP8/Resources/Constants.resx
index fde2d6ff..45e2bc0c 100644
--- a/CampusAppWP8/CampusAppWP8/Resources/Constants.resx
+++ b/CampusAppWP8/CampusAppWP8/Resources/Constants.resx
@@ -393,4 +393,16 @@
http://www.tu-cottbus.de/campusapp-data/Studentenwerk/index.php?mensa=Senftenberg&v=1
+
+ 3
+
+
+ domain
+
+
+ latitude
+
+
+ longitude
+
\ No newline at end of file
diff --git a/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs b/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs
index 45dadd22..30296f10 100644
--- a/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs
+++ b/CampusAppWP8/CampusAppWP8/Utility/Utilities.cs
@@ -6,7 +6,7 @@
// 16.07.2013
//-----------------------------------------------------------------------------
namespace CampusAppWP8.Utility
-{
+{
using System;
using System.Collections.Generic;
using System.Device.Location;
@@ -204,9 +204,8 @@ namespace CampusAppWP8.Utility
///
/// Method determine the current position of the phone
///
- /// accuracy of the position in meters
/// the position of the phone
- public static GeoPosition DetermineCurrentPosition(uint accuracy = 50)
+ public static GeoPosition DetermineCurrentPosition()
{
if (!Settings.AppSetting.GeoWatchEnable)
{
@@ -220,6 +219,12 @@ namespace CampusAppWP8.Utility
{
geoposition = watcher.Position;
}
+ else if (watcher.Permission.Equals(GeoPositionPermission.Denied))
+ {
+ // set to 0 point, if access to device is not allow
+ geoposition = new GeoPosition();
+ geoposition.Location = new GeoCoordinate(0, 0);
+ }
watcher.Stop();
return geoposition;