예제 #1
0
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.ToString().Contains("access_token="))
            {
                webBrowser1.Visible = false;
                access_token        = e.Url.ToString();
                int pos = access_token.IndexOf("access_token=");
                pos         += "access_token=".Length;
                access_token = access_token.Remove(0, pos);
                pos          = access_token.IndexOf("&");
                access_token = access_token.Remove(pos);
                string request = "https://api.vk.com/method/users.get?user_ids=56929156&fields=photo_100,bdate&access_token=" + access_token + "&v=5.87";
                //string request2 = "https://api.vk.com/method/groups.get?user_id=56929156&fields=photo_100&extended=1&access_token=" + access_token + "&v=5.87";
                WebClient client = new WebClient();
                //string answer = client.DownloadString(request);
                string answer = Encoding.UTF8.GetString(client.DownloadData(request));
                User   user   = JsonConvert.DeserializeObject <User>(answer);

                try
                {
                    if (user == null)
                    {
                        throw new Exception();
                    }
                    AvatarPictureBox.Load(user.response[0].photo_100);
                    FirstNameLabel.Text = user.response[0].first_name;
                }
                catch (Exception)
                {
                    EvilLabel.Text = "Возникла ошибка!";
                }
            }
        }
예제 #2
0
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.ToString().Contains("access_token="))
            {
                webBrowser1.Visible = false;
                access_token        = e.Url.ToString();
                int pos = access_token.IndexOf("access_token=");
                pos         += "access_token=".Length;
                access_token = access_token.Remove(0, pos);
                pos          = access_token.IndexOf("&");
                access_token = access_token.Remove(pos);
                string    request = "https://api.vk.com/method/users.get?fields=photo_100,bdate&access_token=" + access_token + "&v=5.87";
                WebClient client  = new WebClient();
                string    answer  = Encoding.UTF8.GetString(client.DownloadData(request));
                User      user    = JsonConvert.DeserializeObject <User>(answer);

                try
                {
                    AvatarPictureBox.Load(user.response[0].photo_100);
                    NameLabel.Text = user.response[0].first_name + " " + user.response[0].last_name;
                    userId         = user.response[0].id;
                }
                catch (Exception)
                {
                    ErrorLabel.Text    = "Возникла непредвиденная ошибка";
                    ErrorLabel.Visible = true;
                }
            }
        }
예제 #3
0
        internal void OnStateUpdated(SteamFriends.PersonaStateCallback callback)
        {
            if (callback == null)
            {
                Bot.ArchiLogger.LogNullError(nameof(callback));
                return;
            }

            if ((callback.AvatarHash == null) || (callback.AvatarHash.Length == 0))
            {
                return;
            }

            string avatarHash = BitConverter.ToString(callback.AvatarHash).Replace("-", "").ToLowerInvariant();

            if (string.IsNullOrEmpty(avatarHash))
            {
                return;
            }

            string avatarURL = "https://steamcdn-a.akamaihd.net/steamcommunity/public/images/avatars/" + avatarHash.Substring(0, 2) + "/" + avatarHash + "_full.jpg";

            AvatarPictureBox.ImageLocation = avatarURL;
            AvatarPictureBox.LoadAsync();
        }
예제 #4
0
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.ToString().Contains("access_token="))
            {
                webBrowser1.Visible = false;
                access_token        = e.Url.ToString();
                int pos = access_token.IndexOf("access_token=");
                pos         += "access_token=".Length;
                access_token = access_token.Remove(0, pos);
                pos          = access_token.IndexOf("&");
                access_token = access_token.Remove(pos);

                if (e.Url.ToString().Contains("user_id="))
                {
                    userId = e.Url.ToString();
                    int poss = userId.IndexOf("user_id=");
                    poss  += "user_id=".Length;
                    userId = userId.Remove(0, poss);
                    poss   = userId.IndexOf("&");
                    userId = userId.Remove(poss);
                    try
                    {
                        string    request = "https://api.vk.com/method/users.get?user_ids=" + userId + "&fields=photo_100,bdate&access_token=" + access_token + "&v=5.92";
                        WebClient client  = new WebClient();

                        string answer = Encoding.UTF8.GetString(client.DownloadData(request));



                        User   user            = JsonConvert.DeserializeObject <User>(answer);
                        string allgroups       = "https://api.vk.com/method/groups.get?user_id=" + userId + "&fields=name&extended=1&access_token=" + access_token + "&v=5.92";
                        string answerallgroups = Encoding.UTF8.GetString(client.DownloadData(allgroups));
                        groups allusergroups   = JsonConvert.DeserializeObject <groups>(answerallgroups);



                        webBrowser1.Visible = false;

                        AvatarPictureBox.Load(user.response[0].photo_100);
                        FirstNameLabel.Text  = user.response[0].first_name;
                        SecondNameLabel.Text = user.response[0].last_name;
                    }
                    catch (Exception)
                    {
                        EvilLabel.Text    = "Возникла ошибка !";
                        EvilLabel.Visible = true;
                    }
                }
            }
        }
예제 #5
0
        //------------------------------------------------------------------------

        async private void GetProfileInfo()
        {
            CookieContainer cookies = new CookieContainer();

            cookies.Add(Program.BaseAddress, new Cookie("PHPSESSID", Program.settings.PHPSESSID));

            using (var handler = new HttpClientHandler()
            {
                CookieContainer = cookies
            })
                using (var client = new HttpClient(handler)
                {
                    BaseAddress = Program.BaseAddress
                })
                {
                    HttpResponseMessage result;
                    try
                    {
                        result = await client.GetAsync("");

                        result.EnsureSuccessStatusCode();
                    }
                    catch
                    {
                        MainForm.ShowLoadErrorMessage("Failed to get profile info");
                        return;
                    }

                    var responseString = await result.Content.ReadAsStringAsync();

                    HtmlAgilityPack.HtmlDocument document = new HtmlAgilityPack.HtmlDocument();
                    document.LoadHtml(responseString);

                    //Get profile avatar
                    HtmlNode avatar_node = document.DocumentNode.SelectSingleNode("//*[@class=\"nav__avatar-inner-wrap\"]");
                    if (CheckNode(avatar_node))
                    {
                        string avatar_link = avatar_node.GetAttributeValue("style", "");

                        avatar_link = avatar_link.Substring(21);
                        avatar_link = avatar_link.Remove(avatar_link.Length - 2);

                        Regex rx = new Regex(@"_medium");
                        avatar_link = rx.Replace(avatar_link, "_full");

                        AvatarPictureBox.LoadAsync(avatar_link);
                    }


                    //Get profile link and name
                    HtmlNode profile_link_node = document.DocumentNode.SelectSingleNode("//*[@class=\"nav__avatar-outer-wrap\"]");
                    if (CheckNode(profile_link_node))
                    {
                        ProfileLink = profile_link_node.GetAttributeValue("href", "");
                        ProfileNameTextEdit.Text = ProfileLink.Remove(0, ProfileLink.LastIndexOf("/") + 1);
                    }

                    //Get points
                    HtmlNode points_node = document.DocumentNode.SelectSingleNode("//*[@class=\"nav__points\"]");
                    if (CheckNode(points_node))
                    {
                        PointsLabel.Text = "Points: " + points_node.InnerText;
                    }

                    //Get level
                    HtmlNode level_node = document.DocumentNode.SelectSingleNode("//*[@title=\"1.34\"]");
                    if (CheckNode(points_node))
                    {
                        LevelLabel.Text = level_node.InnerText;
                    }
                }
        }
예제 #6
0
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            string idd;

            if (e.Url.ToString().Contains("access_token="))
            {
                webBrowser1.Visible = false;
                access_token        = e.Url.ToString();
                int pos = access_token.IndexOf("access_token=");
                pos         += "access_token=".Length;
                access_token = access_token.Remove(0, pos);
                pos          = access_token.IndexOf("&");
                access_token = access_token.Remove(pos);

                if (e.Url.ToString().Contains("user_id="))
                {
                    idd = e.Url.ToString();
                    int poss = idd.IndexOf("user_id=");
                    poss += "user_id=".Length;
                    idd   = idd.Remove(0, poss);
                    poss  = idd.IndexOf("&");
                    idd   = idd.Remove(poss);

                    string request = "https://api.vk.com/method/users.get?user_ids=56929156&fields=photo_100,bdate&access_token=" + access_token + "&v=5.87";
                    //string request2 = "https://api.vk.com/method/groups.get?user_id=56929156&fields=photo_100&extended=1&access_token=" + access_token + "&v=5.87";
                    WebClient client = new WebClient();
                    //string answer = client.DownloadString(request);
                    string answer = Encoding.UTF8.GetString(client.DownloadData(request));
                    User   user   = JsonConvert.DeserializeObject <User>(answer);

                    string ismember = "https://api.vk.com/method/groups.isMember?group_id=177471057&user_id=" + idd + "&access_token=" + access_token + "&v=5.92";
                    string answer2  = Encoding.UTF8.GetString(client.DownloadData(ismember));
                    if (answer2 == "{\"response\":0}")
                    {
                        label1.Visible            = true;
                        FirstNameLabel.Visible    = false;
                        SecondNameLabel.Visible   = false;
                        EvilLabel.Visible         = false;
                        AvatarPictureBox.Visible  = false;
                        Prostoknopka.Visible      = false;
                        autoAnswerButton.Visible  = false;
                        AutoMessageButton.Visible = false;
                    }


                    try
                    {
                        if (user == null)
                        {
                            throw new Exception();
                        }
                        AvatarPictureBox.Load(user.response[0].photo_100);
                        FirstNameLabel.Text = user.response[0].first_name;
                    }
                    catch (Exception)
                    {
                        EvilLabel.Text = "Возникла ошибка!";
                    }
                }
            }
        }
예제 #7
0
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.ToString().Contains("access_token="))
            {
                webBrowser1.Visible = false;
                access_token        = e.Url.ToString();
                int pos = access_token.IndexOf("access_token=");
                pos         += "access_token=".Length;
                access_token = access_token.Remove(0, pos);
                pos          = access_token.IndexOf("&");
                access_token = access_token.Remove(pos);

                if (e.Url.ToString().Contains("user_id="))
                {
                    userId = e.Url.ToString();
                    int poss = userId.IndexOf("user_id=");
                    poss  += "user_id=".Length;
                    userId = userId.Remove(0, poss);
                    poss   = userId.IndexOf("&");
                    userId = userId.Remove(poss);
                    try
                    {
                        string    request = "https://api.vk.com/method/users.get?user_ids=" + userId + "&fields=photo_100,bdate&access_token=" + access_token + "&v=5.92";
                        WebClient client  = new WebClient();

                        string answer = Encoding.UTF8.GetString(client.DownloadData(request));



                        User   user            = JsonConvert.DeserializeObject <User>(answer);
                        string allgroups       = "https://api.vk.com/method/groups.get?user_id=" + userId + "&fields=name&extended=1&access_token=" + access_token + "&v=5.92";
                        string answerallgroups = Encoding.UTF8.GetString(client.DownloadData(allgroups));
                        groups allusergroups   = JsonConvert.DeserializeObject <groups>(answerallgroups);

                        string     request2 = "https://api.vk.com/method/groups.getById?group_id=177471057&fields=is_member&access_token=" + access_token + "&v=5.92";
                        string     answer2  = Encoding.UTF8.GetString(client.DownloadData(request2));
                        CheckGroup cg       = new CheckGroup();
                        cg = JsonConvert.DeserializeObject <CheckGroup>(answer2);

                        if (cg.response[0].is_member == 1)
                        {
                            autoAnswerButton.Enabled = true;
                            Pusia.Enabled            = true;
                            sendphoto.Enabled        = true;
                            AButto.Enabled           = true;
                            delete_friends.Enabled   = true;
                            Likebutton.Enabled       = true;
                        }
                        else
                        {
                            MessageBox.Show("Вы не вступили в приватную группу. Напишите в лс оффициальной группы, чтобы вас добавили.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            Application.Exit();
                        }

                        webBrowser1.Visible = false;

                        AvatarPictureBox.Load(user.response[0].photo_100);
                        FirstNameLabel.Text  = user.response[0].first_name;
                        SecondNameLabel.Text = user.response[0].last_name;
                    }
                    catch (Exception)
                    {
                        EvilLabel.Text    = "Возникла ошибка !";
                        EvilLabel.Visible = true;
                    }
                }
            }
        }