public async Task <IActionResult> UpdateFacebookFriend(FacebookFriendViewModel model) { if (ModelState.IsValid) { await appUserService.TryUpdateFacebookFriend(UserId, model.Id.GetValueOrDefault(0), model.Name, model.ProfileLink); UserFacebookFriends = await appUserService.FacebookFriends(UserId); return(PartialView("~/Views/Account/_FacebookFriendsListPartial.cshtml", UserFacebookFriends)); } return(NoContent()); }
public async Task <ActionResult> FB_TaggableFriends() { var access_token = HttpContext.Items["access_token"].ToString(); if (access_token != null) { var appsecret_proof = access_token.GenerateAppSecretProof(); var fb = new FacebookClient(access_token); dynamic myInfo = await fb.GetTaskAsync("me/taggable_friends?limit=5000".GraphAPICall(appsecret_proof)); var friendsList = new List <FacebookFriendViewModel>(); foreach (dynamic friend in myInfo.data) { FacebookFriendViewModel facebookFriendViewModel = DynamicExtension.ToStatic <FacebookFriendViewModel>(friend); /* * dynamic friendInfo = await fb.GetTaskAsync((facebookFriendViewModel.TaggingId).GraphAPICall(appsecret_proof)); * FacebookProfileViewModel facebookProfile = DynamicExtension.ToStatic<FacebookProfileViewModel>(friendInfo); * facebookFriendViewModel.facebookProfileViewModel = facebookProfile; */ friendsList.Add(facebookFriendViewModel); } friendsList.Sort(delegate(FacebookFriendViewModel x, FacebookFriendViewModel y) { if (x.Name == null && y.Name == null) { return(0); } else if (x.Name == null) { return(-1); } else if (y.Name == null) { return(1); } else { return(x.Name.CompareTo(y.Name)); } }); return(PartialView(friendsList)); } else { throw new HttpException(404, "Missing Access Token"); } }