// 查看所有活动 public List <ActivityView> getActivities() { List <Activity> activities = _context.Activities.Where(x => x.ActivityId != null).ToList(); List <ActivityView> activityViews = new List <ActivityView>(); foreach (Activity activity in activities) { ActivityView activityView = new ActivityView(); activityView.ActivityId = activity.ActivityId; activityView.Name = activity.Name; activityView.StartTime = activity.StartTime; activityView.EndTime = activity.EndTime; switch (activity.Category) { case 1: activityView.Category = "全场活动"; break; case 2: activityView.Category = "特类商品"; break; case 3: activityView.Category = "店铺活动"; break; case 4: activityView.Category = "单个商品"; break; } activityView.Description = activity.Description; activityViews.Add(activityView); } return(activityViews); }
private void ShowSelectedContactTabs(MemberModel member) { if (member != null) { _originalMember = member.Clone(); if (CanViewContactDetails) { ContactDetailsContent = new ContactDetailsView(member.Contact, true, member); } if (CanViewCorrespondence) { CorrespondenceContent = new CorrespondenceView(member.Contact, "Member"); } if (CanViewActivity) { ActivityContent = new ActivityView(member.Contact); } if (CanViewAccounts) { AccountsContent = new AccountsView(member.Contact); } if (CanViewMemberDetails) { MemberDetailsContent = new MemberDetailsView(member); } if (CanViewNoteDetails) { MemberNotesContent = new MemberNotesView(member); } if (CanViewUpdateDetails) { MemberUpdateDetailsContent = new MemberUpdateDetailsView(member); } } }
public ActivityContainer() { View = new ActivityView(); //must set the view first InitializeComponent(); InitializeView(); BindingUtils.RegisterForNotification("ContentOffsetX", zuiContainer.ZoomHost, (d, e) => { if (View != null) { View.ViewPosition = new Point(zuiContainer.ZoomHost.ContentOffsetX, zuiContainer.ZoomHost.ContentOffsetY); } }); BindingUtils.RegisterForNotification("ContentOffsetY", zuiContainer.ZoomHost, (d, e) => { if (View != null) { View.ViewPosition = new Point(zuiContainer.ZoomHost.ContentOffsetX, zuiContainer.ZoomHost.ContentOffsetY); } }); BindingUtils.RegisterForNotification("ContentViewportWidth", zuiContainer.ZoomHost, (d, e) => { if (View != null) { View.ViewWidth = (double)e.NewValue; } }); BindingUtils.RegisterForNotification("ContentViewportHeight", zuiContainer.ZoomHost, (d, e) => { if (View != null) { View.ViewHeight = (double)e.NewValue; } }); LoadParts(); }
public StopActivityPage(ManagerPage parent, Activity a, bool NextIsKnown) { InitializeComponent(); App.AddTitle(TitleLayout); ManagerP = parent; ThisActivity = a; LytIndicator.IsVisible = false; ActivityView aView = new ActivityView(ThisActivity); aView.AsListView(false); if (aView.ItemLayout.Children.Count < 1) { ButtonToQuit.IsVisible = true; } else { aView.OnAllInputItemsFilled += (s, e) => { ButtonToQuit.IsVisible = true; }; } LytActivity.Children.Add(aView); }
async void InitAsync(ActivityView activity) { //get user profile who hosts this activity UserProfileView user = await Helper.GetUserProfileViewObj(activity.HostUserId); //activity picture Img_ActivityPicture.Source = activity.Image; Img_ActivityPicture.Aspect = Aspect.AspectFill; Img_ActivityPicture.HeightRequest = 250; //activity title and category Lbl_ActivityTitle.Text = activity.ActivityTitle; Lbl_ActivityTitle.FontAttributes = FontAttributes.Bold; Lbl_Category.Text = activity.Category; Lbl_Category.FontAttributes = FontAttributes.Italic; //activity metrics Lbl_Guests.Text = activity.JoinedUsersListIds.Count.ToString() + "/" + activity.NoPlaces.ToString(); Img_Guests.Source = "multipleusers.png"; Lbl_Location.Text = activity.Where; Img_Location.Source = "locationicon.png"; Lbl_Date.Text = activity.When.ToString("ddd dd MM", CultureInfo.CreateSpecificCulture("en-US")); Img_Date.Source = "dateicon.png"; //host user profile image and name Img_ProfilePicture.Aspect = Aspect.AspectFill; Img_ProfilePicture.Source = user.ProfileImage; Img_ProfilePicture.HeightRequest = 60; Img_ProfilePicture.WidthRequest = 60; Lbl_HostName.Text = user.FirstName + " " + user.LastName; //activity description Lbl_Desc.Text = activity.ShortDescription; }
void ReleaseDesignerOutlets() { //if (activityView != null) { // activityView.Dispose (); // activityView = null; //} if (ActivityView != null) { ActivityView.Dispose(); ActivityView = null; } if (blurView != null) { blurView.Dispose(); blurView = null; } if (hudView != null) { hudView.Dispose(); hudView = null; } if (textLabel != null) { textLabel.Dispose(); textLabel = null; } }
private void UpdateForm(ActivityView current) { if (CurrentActivity != null) { CurrentActivity.UntapActivity(); } CurrentActivity = current; CurrentActivity.TapActivity(); }
//getActivity data public JsonResult GetActivity() { ActivityView obj = new ActivityView(); DataSet ds = new DataSet(); ds = obj.GetActivity(); string Data = Newtonsoft.Json.JsonConvert.SerializeObject(ds); return(new JsonResult { Data = Data, JsonRequestBehavior = JsonRequestBehavior.AllowGet }); }
public IViewComponentResult Invoke(ActivityView pActivityView) { if (pActivityView == null) { throw new ArgumentNullException(nameof(pActivityView)); } ActivityItemComponentModel model = new ActivityItemComponentModel { ActivityView = pActivityView }; return(View(model)); }
public ActivityPage(ActivityView activity) { InitializeComponent(); if (activity == null) { //set to some default activity activity = Helper.GetDefaultActivity(); } InitAsync(activity); }
/// <summary> /// 从活动节点转换为活动视图 /// </summary> /// <param name="entity">活动实体</param> /// <returns>活动视图</returns> public static ActivityView ConvertFromActivityEntity(ActivityEntity entity) { var view = new ActivityView(); view.ActivityGUID = entity.ActivityGUID; view.ActivityName = entity.ActivityName; view.ActivityCode = entity.ActivityCode; view.ActivityType = entity.ActivityType.ToString(); view.TriggerType = entity.ActivityTypeDetail.TriggerType.ToString(); view.MessageDirection = entity.ActivityTypeDetail.MessageDirection.ToString(); view.Expression = entity.ActivityTypeDetail.Expression; return(view); }
private void StartTimingActivity() { LytCurrentActivity.Children.Clear(); ActivityView aView = new ActivityView(CurrentActivity); aView.AsTimerView(); LytCurrentActivity.Children.Add(aView); LytIndicator.IsVisible = false; LytTimer.IsVisible = true; ActivityTimer.Start(); }
private void OpenActivity() { if (activityView == null) { activityView = new ActivityView(); activityViewModel = new ActivityViewModel(_eventAggregator, new BL.BlRouter(_eventAggregator), getDateTime); activityView.DataContext = activityViewModel; } else { activityViewModel.LoadAsync(); } SelectedView = activityView; }
private async Task LoginAsync() { if (!IsUserLoggedIn()) { FindName(nameof(LoginView)); await Task.Delay(100); } ShowTopPanel(); await ScrollToViewAsync(nameof(ActivityView), ActivityView, ActivityHostView); ActivityMenuItem.IsChecked = true; await ActivityView.InitializeAsync(); }
public ActionResult Edit(int?activityPK) { if (activityPK != null) { IActivitiesRepository activitiesRepository = new ActivitiesRepository(db); Activity activity = activitiesRepository.GetActivityByPK((int)activityPK); ActivityView activityView = new ActivityView(); activityView.ConvertFrom(activity, activityView); return(View(activityView)); } else { return(RedirectToAction("Index", "Activity")); } }
public object GetJson() { List <LineView> lines = new List <LineView>(); List <ActivityView> activities = new List <ActivityView>(); foreach (Line mLine in m_Lines) { lines.Add(LineView.From(mLine)); } foreach (Activity act in m_Acts) { activities.Add(ActivityView.From(act)); } return(new { lines = lines, activities = activities }); }
IEnumerator ShareScoreProcess() { yield return(new WaitForEndOfFrame()); #if UNITY_IPHONE Texture2D screenshot = new Texture2D(Screen.width, Screen.height); screenshot.ReadPixels(new Rect(0, 0, Screen.width, Screen.height), 0, 0); screenshot.Apply(); byte[] imgBytes = screenshot.EncodeToPNG(); uint imgLength = (uint)imgBytes.Length; int score = GameController.instance.GetScore(); string shareMessage = string.Format("Wow ! I've scored {0} in this game !", score); string subjectTitle = "Score Sharing"; ActivityView.Share(shareMessage, subjectTitle, imgBytes, imgLength); #endif }
public ActionResult Index() { IActivitiesRepository activitiesRepository = new ActivitiesRepository(db); int page = !String.IsNullOrWhiteSpace(Request.QueryString["page"]) ? Convert.ToInt32(Request.QueryString["page"]) : 1; int pageSize = !String.IsNullOrWhiteSpace(Request.QueryString["pageSize"]) ? Convert.ToInt32(Request.QueryString["pageSize"]) : Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["ResultsPerPage"]); string sortOrder = !String.IsNullOrWhiteSpace(Request.QueryString["sortOrder"]) ? Request.QueryString["sortOrder"] : "DESC"; string sortColumn = !String.IsNullOrWhiteSpace(Request.QueryString["sortColumn"]) ? Request.QueryString["sortColumn"] : "ActivityPK"; string ordering = sortColumn + " " + sortOrder; ordering = ordering.Trim(); IQueryable <ActivityView> activities = ActivityView.GetHomeView(activitiesRepository.GetValid()) .OrderBy(ordering); if (!String.IsNullOrWhiteSpace(Request.QueryString["searchString"])) { string searchString = Request.QueryString["searchString"].ToString(); activities = activities.Where(c => c.Name.Contains(searchString) || c.Code.Contains(searchString)); } activities = activities.Page(page, pageSize); if (!String.IsNullOrWhiteSpace(Request.QueryString["searchString"])) { string searchString = Request.QueryString["searchString"].ToString(); ViewData["numberOfRecords"] = activitiesRepository.GetValid().Where(c => c.Name.Contains(searchString) || c.Code.Contains(searchString)).Count(); } else { ViewData["numberOfRecords"] = activitiesRepository.GetValid().Count(); } int numberOfPages = ((int)ViewData["numberOfRecords"] + pageSize - 1) / pageSize; if (page > numberOfPages) { string url = LinkHelper.getQueryStringArray(new string[] { "page" }); return(Redirect("Activity?" + url + "page=" + numberOfPages)); } else { return(View("Index", activities.ToList())); } }
private void AddActivityViewToTree(ActivityView view) { if (this.ViewTree.Root == null) { this.ViewTree.Root = view; } else { string parentId = ObjectIdManager.GetId(this.CurrentParent); var parentView = this.ViewTree.FindActivityView(parentId) as IActivityViewContainer; if (parentView != null) { parentView.Add(view, this.CurrentParentPropertyName); } } }
public ActionResult Edit(ActivityView activityView) { if (ModelState.IsValid) { IActivitiesRepository activitiesRepository = new ActivitiesRepository(db); Activity activity = activitiesRepository.GetActivityByPK((int)activityView.ActivityPK); activityView.ConvertTo(activityView, activity); activitiesRepository.SaveChanges(); TempData["message"] = LayoutHelper.GetMessage("UPDATE", activity.ActivityPK); return(RedirectToAction("Index", "Activity")); } else { return(View(activityView)); } }
public IActionResult New(ActivityView model) { if (ModelState.IsValid) { Activity NewActivity = new Activity(); NewActivity.Title = model.Title; NewActivity.Time = model.Time; NewActivity.Date = model.Date; NewActivity.Duration = model.Duration; NewActivity.Address = model.Address; NewActivity.Description = model.Description; NewActivity.UserId = ActiveUser.UserId; _context.Activities.Add(NewActivity); _context.SaveChanges(); return(RedirectToAction("Show", new { id = NewActivity.ActivityId })); } ViewBag.errors = ModelState.Values; return(View("CreateActivity")); }
private void OpenActivity(object context) { var selectedActivity = (Activity)context; if (selectedActivity == null) { MessageBox.Show("Um eine Aktivität zu öffnen, muss eine Aktivität erstellt und ausgewählt sein.", "Aktivität öffnen"); } else { ActivityView activityView = new ActivityView(); var contextActivityView = (ActivityViewViewModel)activityView.DataContext; contextActivityView.contextPhaseViewViewModel = this; contextActivityView.selectedActivity = selectedActivity; contextActivityView.SetActivityValues(); activityView.Show(); } }
public void CreateActivityList() { // When activities are loaded foreach (Activity a in ListActivity) { // Show on screen ActivityView aView = new ActivityView(a); aView.AsListView(true); aView.OnFormHasFilled += OnStartingActivity; TapGestureRecognizer tapGestureRecognizer = new TapGestureRecognizer(); tapGestureRecognizer.Tapped += (s, e) => { UpdateForm(aView); }; aView.GestureRecognizers.Add(tapGestureRecognizer); Activities.Children.Add(aView); } }
public void TestActivityConvert() { var service = CreateService <ActivityViewSource>(); //Just some standard content view var view = new ActivityView() { id = 99, contentId = 5, userId = 6, type = "tc", contentType = "pansu", date = DateTime.Now, extra = "yeah yeah ok", action = "!u" }; var temp = service.FromView(view); var view2 = service.ToView(temp); Assert.Equal(view, view2); }
private void ShowSelectedContactTabs(ContactModel model) { if (model != null) { if (CanViewContactDetails) { ContactDetailsContent = new ContactDetailsView(model); } if (CanViewCorrespondence) { CorrespondenceContent = new CorrespondenceView(model, "Contact"); } if (CanViewActivity) { ActivityContent = new ActivityView(model); } if (CanViewAccounts) { AccountsContent = new AccountsView(model); } } }
// 查看指定活动 public List <ActivityView> getOneActivity(string activityID) { if (activityID == "") { return(null); } Activity activity = _context.Activities.Where(x => x.ActivityId == activityID).FirstOrDefault(); List <ActivityView> activityViews = new List <ActivityView>(); if (activity == null) { return(activityViews = null); } ActivityView activityView = new ActivityView(); activityView.ActivityId = activity.ActivityId; activityView.Name = activity.Name; activityView.StartTime = activity.StartTime; activityView.EndTime = activity.EndTime; switch (activity.Category) { case 1: activityView.Category = "全场活动"; break; case 2: activityView.Category = "特类商品"; break; case 3: activityView.Category = "店铺活动"; break; case 4: activityView.Category = "单个商品"; break; } activityView.Description = activity.Description; activityViews.Add(activityView); return(activityViews); }
private ActivityView FindActivityView(ActivityView activityView, string activityId) { if (activityView.ActivityId == activityId) { return(activityView); } var container = activityView as IActivityViewContainer; if (container != null) { foreach (var childView in container.ActivityViews) { var targetView = this.FindActivityView(childView, activityId); if (targetView != null) { return(targetView); } } } return(null); }
public static ActivityView CreateActivityView(int activityId, global::System.DateTime activityDate, int totalNumberOfClasses, int totalNumberOfCounselor, int totalNumberOfRounds, int districtId, int numberOfAssigedCounselor, bool isMissingCounselors, global::System.DateTime startTime, global::System.DateTime endTime) { ActivityView activityView = new ActivityView(); activityView.ActivityId = activityId; activityView.ActivityDate = activityDate; activityView.TotalNumberOfClasses = totalNumberOfClasses; activityView.TotalNumberOfCounselor = totalNumberOfCounselor; activityView.TotalNumberOfRounds = totalNumberOfRounds; activityView.DistrictId = districtId; activityView.NumberOfAssigedCounselor = numberOfAssigedCounselor; activityView.IsMissingCounselors = isMissingCounselors; activityView.StartTime = startTime; activityView.EndTime = endTime; return activityView; }
public void AddToActivityViews(ActivityView activityView) { base.AddObject("ActivityViews", activityView); }
private TraktActivity GetActivity(ActivityView activityView) { // if we're getting stuff locally for our own activity // there is no need to set the update animation nor get incremental updates if (activityView == ActivityView.me) { SetUpdateAnimation(false); PreviousActivity = GetMyActivityFromCache(); return PreviousActivity; } SetUpdateAnimation(true); if (PreviousActivity == null || PreviousActivity.Activities == null || ActivityStartTime <= 0 || GetFullActivityLoad) { switch (activityView) { case ActivityView.community: PreviousActivity = TraktAPI.TraktAPI.GetCommunityActivity(); break; case ActivityView.followers: PreviousActivity = TraktAPI.TraktAPI.GetFollowersActivity(); break; case ActivityView.following: PreviousActivity = TraktAPI.TraktAPI.GetFollowingActivity(); break; case ActivityView.friends: PreviousActivity = TraktAPI.TraktAPI.GetFriendActivity(false); break; case ActivityView.friendsandme: PreviousActivity = TraktAPI.TraktAPI.GetFriendActivity(true); break; case ActivityView.me: PreviousActivity = GetMyActivityFromCache(); break; } GetFullActivityLoad = false; } else { TraktActivity incrementalActivity = null; // get latest incremental change using last current timestamp as start point switch (activityView) { case ActivityView.community: incrementalActivity = TraktAPI.TraktAPI.GetCommunityActivity(null, null, ActivityStartTime, DateTime.UtcNow.ToEpoch()); break; case ActivityView.followers: incrementalActivity = TraktAPI.TraktAPI.GetFollowersActivity(null, null, ActivityStartTime, DateTime.UtcNow.ToEpoch()); break; case ActivityView.following: incrementalActivity = TraktAPI.TraktAPI.GetFollowingActivity(null, null, ActivityStartTime, DateTime.UtcNow.ToEpoch()); break; case ActivityView.friends: incrementalActivity = TraktAPI.TraktAPI.GetFriendActivity(null, null, ActivityStartTime, DateTime.UtcNow.ToEpoch(), false); break; case ActivityView.friendsandme: incrementalActivity = TraktAPI.TraktAPI.GetFriendActivity(null, null, ActivityStartTime, DateTime.UtcNow.ToEpoch(), true); break; case ActivityView.me: incrementalActivity = GetMyActivityFromCache(); break; } // join the Previous request with the current if (incrementalActivity != null && incrementalActivity.Activities != null) { PreviousActivity.Activities = incrementalActivity.Activities.Union(PreviousActivity.Activities).Take(TraktSkinSettings.DashboardActivityFacadeMaxItems).ToList(); PreviousActivity.Timestamps = incrementalActivity.Timestamps; } } // store current timestamp and only request incremental change next time if (PreviousActivity != null && PreviousActivity.Timestamps != null) { ActivityStartTime = PreviousActivity.Timestamps.Current; } SetUpdateAnimation(false); return PreviousActivity; }
private string GetActivityDescription(ActivityView activityView) { string description = string.Empty; switch (activityView) { case ActivityView.community: description = Translation.ActivityCommunityDesc; break; case ActivityView.followers: description = Translation.ActivityFollowersDesc; break; case ActivityView.following: description = Translation.ActivityFollowingDesc; break; case ActivityView.friends: description = Translation.ActivityFriendsDesc; break; case ActivityView.friendsandme: description = Translation.ActivityFriendsAndMeDesc; break; case ActivityView.me: description = Translation.ActivityMeDesc; break; } return description; }
/// <summary> /// Get push notifications message string from activity view /// </summary> /// <param name="activity">Activity view</param> /// <param name="userHandle">which user this push notification is being sent to</param> /// <returns>Push notifications message string</returns> private string ActivityViewToString(ActivityView activity, string userHandle) { // check inputs if (activity == null) { this.log.LogException("got null activity"); } if (string.IsNullOrWhiteSpace(userHandle)) { this.log.LogException("got null userHandle"); } string result = string.Empty; // first add the actor user name(s) switch ((ActivityType)activity.ActivityType) { // aggregate notification case ActivityType.Like: case ActivityType.Comment: case ActivityType.Reply: if (activity.ActorUsers == null || activity.ActorUsers.Count < 1) { this.log.LogException("unexpected ActorUsers"); } // add usernames result += this.UserListToString(activity.ActorUsers, userHandle); // do not send a notification if the result is null if (string.IsNullOrWhiteSpace(result)) { // this can happen when the user is deleted before the push notification has been processed this.log.LogInformation("got an empty user list, perhaps due to a race condition"); return(null); } // add remaining count of users if (activity.TotalActions > activity.ActorUsers.Count) { result += " & " + (activity.TotalActions - activity.ActorUsers.Count) + " other user"; } if (activity.TotalActions > (activity.ActorUsers.Count + 1)) { result += "s"; } break; // non-aggregate notifications case ActivityType.CommentPeer: case ActivityType.ReplyPeer: case ActivityType.Following: case ActivityType.FollowRequest: case ActivityType.FollowAccept: if (activity.ActorUsers == null || activity.ActorUsers.Count != 1 || activity.ActorUsers[0] == null) { // this can happen when the user is deleted before the push notification has been processed this.log.LogInformation("got a null user, perhaps due to a race condition"); return(null); } result += this.GetUserDisplayName(activity.ActorUsers[0]); // sometimes, the user may be invalid if (string.IsNullOrWhiteSpace(result)) { this.log.LogInformation("exiting due to empty actor string"); return(null); } break; default: this.log.LogException("got unusual activity type " + activity.ActivityType); break; } // now add the action switch ((ActivityType)activity.ActivityType) { case ActivityType.Like: result += " liked"; break; case ActivityType.Comment: result += " commented on"; break; case ActivityType.Reply: result += " replied to"; break; case ActivityType.CommentPeer: case ActivityType.ReplyPeer: result += " mentioned"; break; case ActivityType.Following: result += " is following"; break; case ActivityType.FollowRequest: result += " requested to follow"; break; case ActivityType.FollowAccept: result += " accepted a follow request from"; break; default: this.log.LogException("got unusual activity type " + activity.ActivityType); break; } // now add the acted on owner switch ((ActivityType)activity.ActivityType) { case ActivityType.Like: case ActivityType.Comment: case ActivityType.Reply: if (activity.ActedOnUser == null || activity.ActedOnUser.UserHandle == userHandle) { result += " your"; } else { string actedOnUserName = this.GetUserDisplayName(activity.ActedOnUser); if (string.IsNullOrWhiteSpace(actedOnUserName)) { // this can happen when the acted on user has been deleted this.log.LogInformation("got null acted on user name"); return(null); } result += " " + actedOnUserName + "'s"; } break; case ActivityType.CommentPeer: case ActivityType.ReplyPeer: result += " you in a"; break; case ActivityType.Following: case ActivityType.FollowRequest: case ActivityType.FollowAccept: if (activity.ActedOnUser == null || activity.ActedOnUser.UserHandle == userHandle) { result += " you"; } else { string actedOnUserName = this.GetUserDisplayName(activity.ActedOnUser); if (string.IsNullOrWhiteSpace(actedOnUserName)) { // this can happen when the acted on user has been deleted this.log.LogInformation("got null acted on user name"); return(null); } result += " " + actedOnUserName; } break; default: this.log.LogException("got unusual activity type " + activity.ActivityType); break; } // now add the acted on content type switch ((ActivityType)activity.ActivityType) { case ActivityType.Like: case ActivityType.Comment: case ActivityType.Reply: case ActivityType.CommentPeer: case ActivityType.ReplyPeer: // type of content if ((ContentType)activity.ActedOnContent.ContentType == ContentType.Comment) { result += " comment"; } else if ((ContentType)activity.ActedOnContent.ContentType == ContentType.Reply) { result += " reply"; } else if ((ContentType)activity.ActedOnContent.ContentType == ContentType.Topic) { result += " topic"; } else { this.log.LogException("unexpected ActedOnContent Type " + activity.ActedOnContent.ContentType); } break; case ActivityType.Following: case ActivityType.FollowRequest: case ActivityType.FollowAccept: // do nothing break; default: this.log.LogException("got unusual activity type " + activity.ActivityType); break; } return(result); }
public static void SetActivityView(DependencyObject obj, ActivityView value) { obj.SetValue(ActivityViewProperty, value); }
public MyListItemEventArgs(ActivityView item) { this.MyItem = item; }
internal static string GetActivityListItemTitle(TraktActivity.Activity activity, ActivityView view = ActivityView.community) { if (activity == null) return null; string itemName = GetActivityItemName(activity); if (string.IsNullOrEmpty(itemName)) return null; string userName = activity.User == null ? "" : activity.User.Username; string title = string.Empty; if (string.IsNullOrEmpty(activity.Action) || string.IsNullOrEmpty(activity.Type)) return null; var action = (ActivityAction)Enum.Parse(typeof(ActivityAction), activity.Action); var type = (ActivityType)Enum.Parse(typeof(ActivityType), activity.Type); switch (action) { case ActivityAction.watching: title = string.Format(Translation.ActivityWatching, userName, itemName); break; case ActivityAction.scrobble: if (activity.Plays() > 1) { title = string.Format(Translation.ActivityWatchedWithPlays, userName, itemName, activity.Plays()); } else { title = string.Format(Translation.ActivityWatched, userName, itemName); } break; case ActivityAction.checkin: title = string.Format(Translation.ActivityCheckedIn, userName, itemName); break; case ActivityAction.seen: if (type == ActivityType.episode && activity.Episodes.Count > 1) { title = string.Format(Translation.ActivitySeenEpisodes, userName, activity.Episodes.Count, itemName); } else { title = string.Format(Translation.ActivitySeen, userName, itemName); } break; case ActivityAction.collection: if (type == ActivityType.episode && activity.Episodes.Count > 1) { title = string.Format(Translation.ActivityCollectedEpisodes, userName, activity.Episodes.Count, itemName); } else { title = string.Format(Translation.ActivityCollected, userName, itemName); } break; case ActivityAction.rating: title = string.Format(Translation.ActivityRatingAdvanced, userName, itemName, activity.Rating); break; case ActivityAction.watchlist: if (view != ActivityView.me) { title = string.Format(Translation.ActivityWatchlist, userName, itemName); } else { title = string.Format(Translation.ActivityYourWatchlist, userName, itemName); } break; case ActivityAction.review: title = string.Format(Translation.ActivityReview, userName, itemName); break; case ActivityAction.shout: title = string.Format(Translation.ActivityShouts, userName, itemName); break; case ActivityAction.pause: title = string.Format(Translation.ActivityPaused, userName, itemName, Math.Round(activity.Progress, 0)); break; case ActivityAction.created: // created list title = string.Format(Translation.ActivityCreatedList, userName, itemName); break; case ActivityAction.updated: // updated list if (activity.List.ItemCount == 0) { title = string.Format(Translation.ActivityUpdatedList, userName, itemName); } else if (activity.List.ItemCount == 1) { title = string.Format(Translation.ActivityUpdatedListWithItemCountSingular, userName, itemName, 1); } else { title = string.Format(Translation.ActivityUpdatedListWithItemCount, userName, itemName, activity.List.ItemCount); } break; case ActivityAction.item_added: // added item to list title = string.Format(Translation.ActivityAddToList, userName, itemName, activity.List.Name); break; case ActivityAction.like: if (type == ActivityType.comment) { title = string.Format(Translation.ActivityLikedComment, userName, activity.Shout.User.Username, itemName); } else if (type == ActivityType.list) { title = string.Format(Translation.ActivityLikedList, userName, itemName); } break; } // remove user name from your own feed, its not needed - you know who you are if ((ActivityView)TraktSettings.ActivityStreamView == ActivityView.me && title.StartsWith(TraktSettings.Username)) title = title.Replace(TraktSettings.Username + " ", string.Empty); return title; }