private void instantiateWidget(GameObject widgetPrefab, CellPhoneRecurringLocationActivityDefinition definition) { GameObject gameObject = UnityEngine.Object.Instantiate(widgetPrefab, base.transform, worldPositionStays: false); currentLoadedWidget = gameObject.GetComponent <CellPhoneActivitiyScreenStartingSoonWidget>(); currentLoadedWidget.SetWidgetData(definition); currentLoadedWidget.CountdownCompleteAction += onWidgetCountdownComplete; }
protected override void setWidgetData(CellPhoneActivityDefinition widgetData) { CellPhoneRecurringLocationActivityDefinition cellPhoneRecurringLocationActivityDefinition = widgetData as CellPhoneRecurringLocationActivityDefinition; if (cellPhoneRecurringLocationActivityDefinition != null) { this.widgetData = cellPhoneRecurringLocationActivityDefinition; resetStartTime(this.widgetData.ActivityStartScheduleCron); CoroutineRunner.Start(updateTimer(), this, "updateTimer"); } }
public static CellPhoneRecurringLocationActivityDefinition GetActiveRecurringActivityDefinition(List <CellPhoneRecurringLocationActivityDefinition> activities) { CellPhoneRecurringLocationActivityDefinition result = null; for (int i = 0; i < activities.Count; i++) { DateTime dateTime = Service.Get <ContentSchedulerService>().ScheduledEventDate(); if (CronExpressionEvaluator.EvaluatesTrue(dateTime, activities[i].ShowWidgetScheduleCron) && DateTimeUtils.DoesDateFallBetween(dateTime, activities[i].GetStartingDate().Date, activities[i].GetEndingDate().Date)) { result = activities[i]; break; } } return(result); }
private IEnumerator loadWidget() { CellPhoneRecurringLocationActivityDefinition widgetDefinition = GetActiveRecurringActivityDefinition(recurringActivityDefinitions); if (widgetDefinition != null) { AssetRequest <GameObject> assetRequest = Content.LoadAsync(widgetDefinition.WidgetPrefabKey); yield return(assetRequest); removeCurrentWidget(); instantiateWidget(assetRequest.Asset, widgetDefinition); } else { removeCurrentWidget(); UnityEngine.Object.Destroy(base.gameObject); } }