示例#1
0
        protected async override void OnAppearing()
        {
            EnableLoader();

            //if we reach this point; places must be in database
            var places = await _db.GetObjectAsync <List <Place> >(Const.PLACES_AKAVACHE_KEY);

            var user = await _db.GetObjectAsync <FacebookUser> (Const.USER_AKAVACHE_KEY);

            _accessToken = user.AccessToken;

            var place = places.SingleOrDefault(x => x.Id == PlaceId);

            lblPlaceName.Text    = place.Name;
            lblPlaceAddress.Text = place.Address;

            await FillPage(user.AccessToken);

            DisableLoader();

            FacebookEvent lastFbEvent = null;

            try
            {
                lastFbEvent = await PartyAdvisorApiHelper.GetNextFacebookEvent(user.AccessToken, place.FacebookId);

                var facebookHours = await PartyAdvisorApiHelper.GetHours(user.AccessToken, place.FacebookId);

                if (facebookHours != null && !string.IsNullOrWhiteSpace(facebookHours.StartTime))
                {
                    lblHours.Text = string.Format("[{0}-{1}]", facebookHours.StartTime, string.IsNullOrWhiteSpace(facebookHours.EndTime) ? "?" : facebookHours.EndTime);
                }
            }

            catch (Exception ex)
            {
                //TODO log error
            }

            if (lastFbEvent != null && lastFbEvent.EndTime > DateTimeOffset.Now)
            {
                lblFacebookLink.IsVisible   = true;
                _facebookEvent              = lastFbEvent;
                lblFacebookLink.IsUnderline = true;
            }
        }
		protected async override void OnAppearing ()
		{
			EnableLoader ();

			//if we reach this point; places must be in database
			var places = await _db.GetObjectAsync<List<Place>>(Const.PLACES_AKAVACHE_KEY);
			var user = await _db.GetObjectAsync<FacebookUser> (Const.USER_AKAVACHE_KEY);

			_accessToken = user.AccessToken;

			var place = places.SingleOrDefault (x=>x.Id == PlaceId);
			lblPlaceName.Text = place.Name;
			lblPlaceAddress.Text = place.Address;

			await FillPage (user.AccessToken);

			DisableLoader ();

			FacebookEvent lastFbEvent = null;

			try
			{
				lastFbEvent = await PartyAdvisorApiHelper.GetNextFacebookEvent (user.AccessToken, place.FacebookId);
				var facebookHours = await PartyAdvisorApiHelper.GetHours(user.AccessToken, place.FacebookId);

				if(facebookHours != null && !string.IsNullOrWhiteSpace(facebookHours.StartTime))
				{
					lblHours.Text = string.Format("[{0}-{1}]",facebookHours.StartTime, string.IsNullOrWhiteSpace(facebookHours.EndTime) ? "?" : facebookHours.EndTime);
				}
			}

			catch(Exception ex) 
			{
				//TODO log error
			}

			if (lastFbEvent != null && lastFbEvent.EndTime > DateTimeOffset.Now) {
				lblFacebookLink.IsVisible = true;
				_facebookEvent = lastFbEvent;
				lblFacebookLink.IsUnderline = true;
			}
		}