Пример #1
0
        public static InstagramMediaInfo GetMediaInfo(string access_token)
        {
            string              parameters = "/v1/users/self/media/recent/?access_token=" + access_token;
            InstagramMediaInfo  mediaInfo  = new InstagramMediaInfo();
            HttpResponseMessage message    = client.GetAsync(parameters).Result;

            if (message.IsSuccessStatusCode)
            {
                mediaInfo = message.Content.ReadAsAsync <InstagramMediaInfo>().Result;
                return(mediaInfo);
            }
            return(null);
        }
Пример #2
0
        public async Task <JsonResult> GetPostLikes(string link, int numberOfPrevLikes = 0, bool increasePoints = false)
        {
            InstagramPost      post      = context.InstagramPosts.First(c => c.Link == link);
            InstagramMediaInfo mediaInfo = GetMediaInfo(post.ApplicationUser
                                                        .AccessTokens.First(a => a.Provider == "Instagram").AccessTokenValue);
            int count = mediaInfo.data.First(d => d.link == link).likes.count;

            if (increasePoints)
            {
                if (count > numberOfPrevLikes)
                {
                    lock (CurrentUser)
                    {
                        CurrentUser.Points += 10;
                    }
                    await context.SaveChangesAsync();
                }
            }
            return(Json(count,
                        JsonRequestBehavior.AllowGet));
        }
Пример #3
0
        public JsonResult GetCurrentUserPosts()
        {
            InstagramMediaInfo mediaInfo = GetMediaInfo(CurrentUser.AccessTokens.First(a => a.Provider == "Instagram").AccessTokenValue);

            return(Json(mediaInfo, JsonRequestBehavior.AllowGet));
        }