コード例 #1
0
    public void PopulateSponsors(DataEntryBase data)
    {
        // If there are no activities, don't show this!
        bool noActivities = _mainCarousel.CarouselCards.Count(x => x as ActivityDealCardViewModel != null && (x as ActivityDealCardViewModel).IsActivity) == 0;

        if (noActivities)
        {
            HideCarousel(true);
            HideNoResultsCard(false);
            return;
        }

        // Inject these every so often
        SponsorList sponsorList = data as SponsorList;

        if (null == sponsorList)
        {
            return;
        }
        else if (null == sponsorList.Data || sponsorList.Data.Length == 0)
        {
            return;
        }

        HideCarousel(false);
        HideNoResultsCard(true);

        _mainCarousel.PopulateSponsors(sponsorList);
    }
コード例 #2
0
        void OnRetrievedUserFlags(DataEntryBase data)
        {
            UserFlagsEntry flags = data as UserFlagsEntry;

            if (null == flags || null == flags.Data)
            {
                StartCoroutine(PlayVideo());
            }
            else
            {
                if (flags.Data.hasSeenTooltip == false)
                {
                    StartCoroutine(PlayVideo());
                }
                else
                {
                    if (flags.Data.hasToggledLocation == true)
                    {
                        StartCoroutine(ITTDataCache.Instance.UpdateLocation(null, null, userFlags: flags));
                    }
                    currentState = ITTMainSceneManager.ITTStates.Main;
                }
            }

            ITTDataCache.Instance.Data.RemoveCallbackFromEntry((int)DataCacheIndices.USER_FLAGS, OnRetrievedUserFlags);

                        #if !UNITY_EDITOR
            TouchScreenKeyboard.hideInput = true;
                        #endif
        }
コード例 #3
0
	void OnGotRecommendations(DataEntryBase _data)
	{
		RecommendationEntry recEntry = _data as RecommendationEntry;
		if (null == _data) return;
		if (null == recEntry.Data) return;

		RecommendationList = recEntry.Data.ToList();
	}
コード例 #4
0
        public void OnRetrievedUserProfile(DataEntryBase data)
        {
            _userProfile = data as UserProfile;
            if (null == _userProfile)
            {
                return;
            }

            model.nameLabel.text = _userProfile.Data.Username;
        }
コード例 #5
0
    void OnGotRecTracker(DataEntryBase data)
    {
        RecommendationTrackerEntry rData = data as RecommendationTrackerEntry;

        if (null == rData)
        {
            return;
        }
        recTracker = rData.Data ?? new HelperMethods.RecommendationTracker();
    }
コード例 #6
0
    void OnGotTipTracker(DataEntryBase _data)
    {
        TipTrackerEntry trackerEntry = _data as TipTrackerEntry;

        if (null == trackerEntry)
        {
            return;
        }
        HelperMethods.TipTracker data = trackerEntry.Data;
        if (null != data)
        {
            LastTipsShowTimeStamp = data.tipTimeLastShown;
        }
    }
コード例 #7
0
		static private void FlagViewedTooltipCallback(DataEntryBase data)
		{
			UserFlagsEntry flags = data as UserFlagsEntry;
			if (null == flags)
				return;
			
			HelperMethods.UserFlags tempFlags = flags.Data;
			if (null == flags.Data)
				tempFlags = new HelperMethods.UserFlags();
			
			tempFlags.hasSeenTooltip = true;
			ITTDataCache.Instance.Data.UpdateDataEntry((int)DataCacheIndices.USER_FLAGS, tempFlags, false);
			
			ITTDataCache.Instance.Data.RemoveCallbackFromEntry((int)DataCacheIndices.USER_FLAGS, FlagViewedTooltipCallback);
		}
コード例 #8
0
    void OnGotTips(DataEntryBase _data)
    {
        TipsEntry data2 = _data as TipsEntry;

        if (null == data2)
        {
            return;
        }
        ShortTips[] data = data2.Data;
        if (null != data)
        {
            Tipses         = data.ToList();
            _firstDataCall = true;
        }
    }
コード例 #9
0
    void OnGotRecommendations(DataEntryBase _data)
    {
        RecommendationEntry recEntry = _data as RecommendationEntry;

        if (null == _data)
        {
            return;
        }
        if (null == recEntry.Data)
        {
            return;
        }

        RecommendationList = recEntry.Data.ToList();
    }
コード例 #10
0
        static private void FlagViewedTooltipCallback(DataEntryBase data)
        {
            UserFlagsEntry flags = data as UserFlagsEntry;

            if (null == flags)
            {
                return;
            }

            HelperMethods.UserFlags tempFlags = flags.Data;
            if (null == flags.Data)
            {
                tempFlags = new HelperMethods.UserFlags();
            }

            tempFlags.hasSeenTooltip = true;
            ITTDataCache.Instance.Data.UpdateDataEntry((int)DataCacheIndices.USER_FLAGS, tempFlags, false);

            ITTDataCache.Instance.Data.RemoveCallbackFromEntry((int)DataCacheIndices.USER_FLAGS, FlagViewedTooltipCallback);
        }
コード例 #11
0
        void OnRetrievedUserFlags(DataEntryBase data)
        {
            UserFlagsEntry flags = data as UserFlagsEntry;

            if (null != flags || null != flags.Data)
            {
                if (flags.Data.hasToggledLocation == true)
                {
                    model.LocationLabel.text = "Current Location";
                }
                else
                {
                    LocationDataModel locationData = ITTDataCache.Instance.RetrieveLocationData();
                    if (null == locationData)
                    {
                        locationData = ITTDataCache.Instance.DefaultLocationData();
                    }
                    model.LocationLabel.text = (!string.IsNullOrEmpty(locationData.zipCode)) ? locationData.zipCode : (!string.IsNullOrEmpty(locationData.cityState)) ? locationData.cityState : "Austin, TX";
                }
            }

            ITTDataCache.Instance.Data.RemoveCallbackFromEntry((int)DataCacheIndices.USER_FLAGS, OnRetrievedUserFlags);
        }
コード例 #12
0
        void OnRetrievedUserFlags(DataEntryBase data)
        {
            UserFlagsEntry flags = data as UserFlagsEntry;

            if (null == flags)
            {
                return;
            }

            HelperMethods.UserFlags tempFlags = flags.Data;
            if (null == flags.Data)
            {
                tempFlags        = new HelperMethods.UserFlags();
                _toolTipComplete = tempFlags.hasSeenTooltip = false;
                ITTDataCache.Instance.Data.UpdateDataEntry((int)DataCacheIndices.USER_FLAGS, tempFlags, false);
            }
            else
            {
                if (tempFlags.hasSeenTooltip == true)
                {
                    _toolTipComplete = true;
                }
            }
        }
コード例 #13
0
		void OnRetrievedUserFlags(DataEntryBase data)
		{
			UserFlagsEntry flags = data as UserFlagsEntry;
			
			if (null != flags || null != flags.Data)
			{
				if (flags.Data.hasToggledLocation == true)
				{
					model.LocationLabel.text = "Current Location";
				}
				else
				{
					LocationDataModel locationData = ITTDataCache.Instance.RetrieveLocationData();
					if (null == locationData) {
						locationData = ITTDataCache.Instance.DefaultLocationData();
					}
					model.LocationLabel.text = (!string.IsNullOrEmpty(locationData.zipCode)) ? locationData.zipCode : (!string.IsNullOrEmpty(locationData.cityState)) ? locationData.cityState : "Austin, TX";
				}
			}
			
			ITTDataCache.Instance.Data.RemoveCallbackFromEntry((int)DataCacheIndices.USER_FLAGS, OnRetrievedUserFlags);
		}
コード例 #14
0
ファイル: Tips.cs プロジェクト: odasaburo/ActiveLife
	void OnGotTipTracker(DataEntryBase _data)
	{
		TipTrackerEntry trackerEntry = _data as TipTrackerEntry;
		if (null == trackerEntry) return;
		HelperMethods.TipTracker data = trackerEntry.Data;
		if (null != data)
		{
			LastTipsShowTimeStamp = data.tipTimeLastShown;
		}
	}
コード例 #15
0
ファイル: Tips.cs プロジェクト: odasaburo/ActiveLife
	void OnGotTips(DataEntryBase _data)
	{
		TipsEntry data2 = _data as TipsEntry;
		if (null == data2) return;
		ShortTips[] data = data2.Data;
		if (null != data)
		{
			Tipses = data.ToList();
			_firstDataCall = true;
		}
	}
コード例 #16
0
		void OnRetrievedUserFlags(DataEntryBase data)
		{
			UserFlagsEntry flags = data as UserFlagsEntry;
			if (null == flags)
				return;

			HelperMethods.UserFlags tempFlags = flags.Data;
			if (null == flags.Data)
			{
				tempFlags = new HelperMethods.UserFlags();
				_toolTipComplete = tempFlags.hasSeenTooltip = false;	
				ITTDataCache.Instance.Data.UpdateDataEntry((int)DataCacheIndices.USER_FLAGS, tempFlags, false);
			}
			else
			{
				if (tempFlags.hasSeenTooltip == true)
					_toolTipComplete = true;
			}
		}
コード例 #17
0
    public void Populate(DataEntryBase data)
    {
        ActivityList activityList = data as ActivityList;

        if (null == activityList)
        {
            return;
        }

        // Keep hidden until we have ALL our data.
        HideCarousel(true);
        // However don't show "No Cards" as we don't know if there are any yet.
        HideNoResultsCard(true);

        if (null == activityList.Data)
        {
            //We don't need to do anything until update the data from the server
            return;
        }

        // Always operate on the main carousel
        List <BaseCardData> cardList = activityList.Data.Cast <BaseCardData>().ToList();
        bool anyToday     = _mainCarousel.AnyCardsForSelectedDay(cardList);
        bool anyMoreToday = _mainCarousel.AnyCardsRemainingForSelectedDay(cardList);

        _mainCarousel.Populate(cardList);

        // If the Populate gave me something, recenter and call our handler.
        bool hasCards = _mainCarousel.CarouselCards.Any(x =>
        {
            var cardModel = x as ActivityDealCardViewModel;
            return(cardModel != null && cardModel.IsActivity);
        });

        if (hasCards)
        {
            CancelInvoke("InvokeShowNoResultsCard");
            if (null != OnActivitiesPopulated)
            {
                OnActivitiesPopulated();
            }

            _mainCarousel.Recenter();
            if (null != _mainCarousel.CenterOnChild)
            {
                _mainCarousel.CenterOnChild.Recenter();
            }

            // Now grab sponsors.
            ITTDataCache.Instance.Data.GetDataEntry((int)DataCacheIndices.SPONSOR_LIST, PopulateSponsors, OnPopulateSponsorsFailure);
        }
        else
        {
            // Otherwise if Populate did nothing (for example, if the day had activities but all in the past), show the No Results card.
            if (anyToday && !anyMoreToday)
            {
                ShowEndOfDayCard();
            }
            else
            {
                // However delay it since this could be our initial empty cache pull and we haven't hit the server yet.
                Invoke("InvokeShowNoResultsCard", 5f);
            }
        }

        isMainCarouselPopulated = true;
    }
コード例 #18
0
	public void PopulateSponsors(DataEntryBase data)
	{
		// If there are no activities, don't show this!
		bool noActivities =_mainCarousel.CarouselCards.Count(x => x as ActivityDealCardViewModel != null && (x as ActivityDealCardViewModel).IsActivity) == 0;
		if (noActivities)
		{
			HideCarousel(true);
			HideNoResultsCard(false);
			return;
		}

		// Inject these every so often
		SponsorList sponsorList = data as SponsorList;
		if (null == sponsorList)
			return;
		else if (null == sponsorList.Data || sponsorList.Data.Length == 0)
			return;

		HideCarousel(false);
		HideNoResultsCard(true);

		_mainCarousel.PopulateSponsors(sponsorList);
	}
コード例 #19
0
		void OnRetrievedUserFlags(DataEntryBase data)
		{
			UserFlagsEntry flags = data as UserFlagsEntry;

			if (null == flags || null == flags.Data)
			{

				StartCoroutine(PlayVideo());
			}
			else
			{
				if(flags.Data.hasSeenTooltip == false)
				{
					StartCoroutine(PlayVideo());
				}
				else
				{
					if (flags.Data.hasToggledLocation == true)
					{
						StartCoroutine(ITTDataCache.Instance.UpdateLocation(null, null, userFlags: flags));
					}
					currentState = ITTMainSceneManager.ITTStates.Main;
				}
			}

			ITTDataCache.Instance.Data.RemoveCallbackFromEntry((int)DataCacheIndices.USER_FLAGS, OnRetrievedUserFlags);

			#if !UNITY_EDITOR
			TouchScreenKeyboard.hideInput = true;
			#endif
		}
コード例 #20
0
		public void OnRetrievedUserProfile(DataEntryBase data)
		{
			_userProfile = data as UserProfile;
			if (null == _userProfile)
				return;

			model.nameLabel.text = _userProfile.Data.Username;
		}
コード例 #21
0
	void OnGotRecTracker(DataEntryBase data)
	{
		RecommendationTrackerEntry rData = data as RecommendationTrackerEntry;
		if (null == rData) return;
		recTracker = rData.Data ?? new HelperMethods.RecommendationTracker();
	}
コード例 #22
0
    public void Populate(DataEntryBase data)
    {
        ActivityList activityList = data as ActivityList;
        if (null == activityList)
            return;

        // Keep hidden until we have ALL our data.
        HideCarousel(true);
        // However don't show "No Cards" as we don't know if there are any yet.
        HideNoResultsCard(true);

        if (null == activityList.Data)
        {
            //We don't need to do anything until update the data from the server
            return;
        }

        // Always operate on the main carousel
        List<BaseCardData> cardList = activityList.Data.Cast<BaseCardData>().ToList();
        bool anyToday = _mainCarousel.AnyCardsForSelectedDay(cardList);
        bool anyMoreToday = _mainCarousel.AnyCardsRemainingForSelectedDay(cardList);
        _mainCarousel.Populate(cardList);

        // If the Populate gave me something, recenter and call our handler.
        bool hasCards = _mainCarousel.CarouselCards.Any(x =>
        {
            var cardModel = x as ActivityDealCardViewModel;
            return cardModel != null && cardModel.IsActivity;
        });

		if (hasCards)
		{
			CancelInvoke("InvokeShowNoResultsCard");
            if (null != OnActivitiesPopulated)
                OnActivitiesPopulated();

            _mainCarousel.Recenter();
			if(null != _mainCarousel.CenterOnChild)
				_mainCarousel.CenterOnChild.Recenter();

			// Now grab sponsors.
			ITTDataCache.Instance.Data.GetDataEntry((int)DataCacheIndices.SPONSOR_LIST, PopulateSponsors, OnPopulateSponsorsFailure);
		}
		else
		{
			// Otherwise if Populate did nothing (for example, if the day had activities but all in the past), show the No Results card.
			if (anyToday && !anyMoreToday)
			{
				ShowEndOfDayCard();
			}
			else
			{
				// However delay it since this could be our initial empty cache pull and we haven't hit the server yet.
				Invoke ("InvokeShowNoResultsCard", 5f);
			}
		}

        isMainCarouselPopulated = true;
	}