// Token: 0x060061A4 RID: 24996 RVA: 0x002275B8 File Offset: 0x002259B8 protected override void SetPickerContentFromApiModel(VRCUiContentButton content, object am) { APIUser user = null; content.SetDetailShouldShowImage(0, false); content.SetDetailShouldShowImage(1, false); content.SetDetailShouldShowImage(2, false); if (am is ApiNotification) { ApiNotification notif = (ApiNotification)am; user = new APIUser(); user.Init(notif); content.Initialize(user.currentAvatarThumbnailImageUrl, user.displayName, null, notif.id); APIUser.Fetch(notif.senderUserId, delegate(APIUser u) { content.Initialize(u.currentAvatarThumbnailImageUrl, u.displayName, delegate { VRCUiPage page = VRCUiManager.Instance.GetPage("UserInterface/MenuContent/Screens/UserInfo"); VRCUiManager.Instance.ShowScreen(page); ((PageUserInfo)page).SetupUserInfo(u, PageUserInfo.InfoType.ReceivedFriendRequest, UiUserList.ListType.None); ((PageUserInfo)page).notification = notif; }, notif.id); }, null); } else { user = (APIUser)am; content.Initialize(user.currentAvatarThumbnailImageUrl, user.displayName, delegate { PageUserInfo.InfoType infoType = PageUserInfo.InfoType.NotFriends; VRCUiPage page = VRCUiManager.Instance.GetPage("UserInterface/MenuContent/Screens/UserInfo"); VRCUiManager.Instance.ShowScreen(page); bool flag = false; if (APIUser.CurrentUser.friends != null) { flag = (APIUser.CurrentUser.friends.Find((APIUser u) => u.id == user.id) != null); } switch (this.listType) { case UiUserList.ListType.InWorld: if (flag) { infoType = PageUserInfo.InfoType.OnlineFriend; } else { infoType = PageUserInfo.InfoType.NotFriends; } break; case UiUserList.ListType.FriendRequests: infoType = PageUserInfo.InfoType.ReceivedFriendRequest; break; case UiUserList.ListType.OnlineFriends: infoType = PageUserInfo.InfoType.OnlineFriend; break; case UiUserList.ListType.OfflineFriends: infoType = PageUserInfo.InfoType.OfflineFriend; break; case UiUserList.ListType.Invites: infoType = PageUserInfo.InfoType.Invited; break; case UiUserList.ListType.HelpRequests: infoType = PageUserInfo.InfoType.ReceivedHelpRequest; break; case UiUserList.ListType.Search: { Player player = PlayerManager.GetPlayer(user.id); bool flag2 = player != null && player.vrcPlayer != null && player.vrcPlayer.isInvisible; if (flag) { infoType = ((!flag2) ? PageUserInfo.InfoType.OnlineFriend : PageUserInfo.InfoType.OfflineFriend); } else { infoType = PageUserInfo.InfoType.NotFriends; } break; } } ((PageUserInfo)page).SetupUserInfo(user, infoType, this.listType); }, user.id); } if (this.listType == UiUserList.ListType.FriendRequests) { content.SetDetailShouldShowImage(2, true); } else if (ModerationManager.Instance.IsBlocked(user.id)) { content.SetDetailShouldShowImage(1, true); } else if (APIUser.IsFriendsWith(user.id)) { content.SetDetailShouldShowImage(0, true); } }