public LocationDataModel DefaultLocationData() { LocationDataModel requestLocationData = new LocationDataModel(); requestLocationData.lat = _latitud; requestLocationData.lon = _longitud; requestLocationData.cityState = _cityState; return(requestLocationData); }
public override string ToString() { LocationDataModel locationDataModel = ITTDataCache.Instance.RetrieveLocationData(); if (null == locationDataModel) { locationDataModel = ITTDataCache.Instance.DefaultLocationData(); } return("distance(address, geopoint(" + locationDataModel.lastLatitude + ", " + locationDataModel.lastLongitude + ")) < " + _distanceValue); }
public void RequestCombinedActivities(Action <string> callback, Action <string> errorCallback, ITTFilterRequest filter = null) { LocationDataModel requestLocationData = RetrieveLocationData(); if (requestLocationData == null) { requestLocationData = DefaultLocationData(); } // TODO: Add conversion to lat long call and store it here if lat long is missing StartCoroutine(_networkManager.RequestCombinedActivitiesDeals(requestLocationData.lastLatitude, requestLocationData.lastLongitude, filter ?? new ITTFilterRequest(), callback, errorCallback)); }
public LocationDataModel RetrieveLocationData() { LocationDataModel latestLocation = null; _dataBlob.GetDataEntry((int)DataCacheIndices.LOCATION, data => { LocationDataEntry info = data as LocationDataEntry; if (null == info) { return; } if (info.Data != null) { latestLocation = new LocationDataModel(); latestLocation.lat = info.Data.lastLatitude; latestLocation.lon = info.Data.lastLongitude; latestLocation.lastAltitude = info.Data.lastAltitude; latestLocation.locationTimeStamp = info.Data.locationTimeStamp; latestLocation.cityState = info.Data.cityState; latestLocation.zipCode = info.Data.zipCode; } }); return(latestLocation); }
public IEnumerator UpdateLocation(Action callback, Action <string> errorCallback, UserFlagsEntry userFlags = null) { if (!Input.location.isEnabledByUser) { errorCallback("Location service is not activated. Please check settings and try again."); yield break; } Input.location.Start(); int maxWait = 20; while (Input.location.status == LocationServiceStatus.Initializing && maxWait > 0) { yield return(new WaitForSeconds(1)); maxWait--; } if (maxWait < 1) { if (null != errorCallback) { errorCallback("Location service timed out. Please try again."); yield break; } } if (Input.location.status == LocationServiceStatus.Failed) { if (null != errorCallback) { errorCallback("Location service is not activated. Please check settings and try again."); yield break; } } else { if (userFlags == null) { ITTDataCache.Instance.Data.GetDataEntry((int)DataCacheIndices.USER_FLAGS, HelperMethods.Instance.FlagCurrentLocation); } else { HelperMethods.Instance.FlagCurrentLocation(userFlags); } Debug.Log("Retrieved Location: " + Input.location.lastData.latitude + " " + Input.location.lastData.longitude + " " + Input.location.lastData.altitude + " " + Input.location.lastData.timestamp); LocationDataModel lastLocationData = new LocationDataModel(); lastLocationData.lat = Input.location.lastData.latitude; lastLocationData.lon = Input.location.lastData.longitude; lastLocationData.lastAltitude = Input.location.lastData.altitude; lastLocationData.locationTimeStamp = Input.location.lastData.timestamp; _dataBlob.UpdateDataEntry((int)DataCacheIndices.LOCATION, lastLocationData); Input.location.Stop(); if (null != callback) { callback(); } } }