コード例 #1
0
        //public void SetScrollViewer(ScrollViewer scrollViewer)
        //{
        //    MediaGeneratror.SetLV(scrollViewer);
        //}
        async void GetUserFriendship()
        {
            try
            {
                var status = await InstaApi.UserProcessor.GetFriendshipStatusAsync(UserShort.Pk);

                if (status.Succeeded)
                {
                    FriendshipStatus = status.Value;
                    if (FriendshipStatus != null)
                    {
                        if (FriendshipStatus.IsPrivate && !FriendshipStatus.Following)
                        {
                            PrivateVisibility = Visibility.Visible;
                        }
                    }
                    else
                    {
                        PrivateVisibility = Visibility.Collapsed;
                    }
                }
                else
                {
                    if (FriendshipStatus == null)
                    {
                        FriendshipStatus  = new InstaStoryFriendshipStatus();
                        PrivateVisibility = Visibility.Collapsed;
                    }
                }
            }
            catch { }
        }
コード例 #2
0
        async void GetUserInfo()
        {
            try
            {
                var userInfo = await InstaApi.UserProcessor.GetUserInfoByIdAsync(UserShort.Pk);

                if (userInfo.Succeeded)
                {
                    ChainingSuggestions.Clear();
                    User = userInfo.Value;
                    View.CreateTabs(User.TotalIGTVVideos > 0, User.ShoppablePostsCount > 0, User.UsertagsCount > 0);
                    if (User != null)
                    {
                        GetPosts(true);
                    }
                    //if (!FirstTime)
                    View.UpdateUserImage(User.ProfilePicUrl);
                    if (userInfo.Value.ChainingSuggestions?.Count > 0)
                    {
                        ChainingSuggestions.AddRange(User.ChainingSuggestions);
                        ChainingVisibility = Visibility.Visible;
                        await MainPage.Current.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() =>
                        {
                            var users    = userInfo.Value.ChainingSuggestions.Select(x => x.Pk);
                            var statuses = await InstaApi.UserProcessor.GetFriendshipStatusesAsync(users.ToArray());
                            ($"users count: {users.Count()}").PrintDebug();
                            ($"statuses count: {statuses.Value.Count}").PrintDebug();
                            foreach (var item in statuses.Value)
                            {
                                try
                                {
                                    var u = ChainingSuggestions.SingleOrDefault(s => s.Pk == item.Pk);
                                    if (u != null)
                                    {
                                        u.FriendshipStatus = item;
                                    }
                                }
                                catch { }
                            }
                        });
                    }
                    else
                    {
                        ChainingVisibility = Visibility.Collapsed;
                    }
                }
                else
                {
                    if (userInfo.Info.Message.ToLower().Contains("user not found"))
                    {
                        $"User not found.\r\n@{UserShort.UserName} doesn't exists.".ShowErr();
                    }
                    FriendshipStatus   = new InstaStoryFriendshipStatus();
                    ChainingVisibility = Visibility.Collapsed;
                }
            }
            catch { }
            //FirstTime = false;
        }
コード例 #3
0
        public UserProfileMenusDialog(InstaUserInfo userInfo, InstaStoryFriendshipStatus friendshipStatus)
        {
            this.InitializeComponent();
            User             = userInfo;
            FriendshipStatus = friendshipStatus;
            LVMenu.Items.Add(new MenuClass {
                Command = CommandType.SendMessage, Text = "Send message"
            });
            if (FriendshipStatus != null)
            {
                if (FriendshipStatus.Blocking)
                {
                    LVMenu.Items.Add(new MenuClass {
                        Command = CommandType.Unblock, Text = "Unblock"
                    });
                }
                else
                {
                    LVMenu.Items.Add(new MenuClass {
                        Command = CommandType.Block, Text = "Block"
                    });
                }
            }
            LVMenu.Items.Add(new MenuClass {
                Command = CommandType.DownloadProfilePicture, Text = "Download profile picture"
            });
            if (FriendshipStatus != null)
            {
                if (FriendshipStatus.IsBlockingReel)
                {
                    LVMenu.Items.Add(new MenuClass {
                        Command = CommandType.ShowYourStory, Text = "Show Your Story"
                    });
                }
                else
                {
                    LVMenu.Items.Add(new MenuClass {
                        Command = CommandType.HideYourStory, Text = "Hide Your Story"
                    });
                }
                if (FriendshipStatus.FollowedBy || FriendshipStatus.Following)
                {
                    if (FriendshipStatus.Muting)
                    {
                        LVMenu.Items.Add(new MenuClass {
                            Command = CommandType.UnMute, Text = "Unmute"
                        });
                    }
                    else
                    {
                        LVMenu.Items.Add(new MenuClass {
                            Command = CommandType.Mute, Text = "Mute"
                        });
                    }
                }
            }

            LVMenu.Items.Add(new MenuClass {
                Command = CommandType.CopyUsername, Text = "Copy username"
            });
            LVMenu.Items.Add(new MenuClass {
                Command = CommandType.CopyUsernameAddress, Text = "Copy username address"
            });
            LVMenu.Items.Add(new MenuClass {
                Command = CommandType.ShareThisProfile, Text = "Share this profile"
            });


            LVMenu.Items.Add(new MenuClass {
                Command = CommandType.Cancel, Text = "Cancel"
            });
        }