private void HandleFacebookLogin() { var cookie = Authentication.GetSignedCookie("fbs_" + ConfigurationManager.AppSettings["FacebookApplicationId"], ConfigurationManager.AppSettings["FacebookApplicationSecret"]); if (cookie != null) { string jsonProfile = Http.DownloadContent((HttpWebRequest)WebRequest.Create("https://graph.facebook.com/me?locale=en_US&access_token=" + cookie["access_token"]), null); var serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); var profile = (Dictionary <string, object>)serializer.DeserializeObject(jsonProfile); string facebookUserId = profile["id"].ToString(); CSBooster_DataContext csb = new CSBooster_DataContext(Helper.GetSiemeConnectionString()); var user = csb.hisp_DataObject_GetUserIDByFacebookUserId(facebookUserId).ElementAtOrDefault(0); if (user != null) // User exists { MembershipUser membershipUser = Membership.GetUser(user.USR_ID); if (membershipUser != null) { PerformLogin(membershipUser.UserName); } } else // User doesn't exist { ScriptManager.RegisterStartupScript(this, this.GetType(), "LinkFacebookAccount", string.Format("$telerik.$(function() {{ radWinOpen('/Pages/Popups/LinkFacebookAccount.aspx', '{0}', 420, 100, false, null, 'settingsWin') }} );", GuiLanguage.GetGuiLanguage("Shared").GetString("CommandCreateProfile")), true); } } else { litLogin.Text = "<fb:login-button perms=\"email\"></fb:login-button>"; } }