private void DoTwitterLogin(HttpContext context, string returnUrl) { if (TwitterConsumer.IsTwitterConsumerConfigured) { var token = context.Request["oauth_token"]; if (string.IsNullOrEmpty(token)) { var request = TwitterConsumer.StartSignInWithTwitter(false); request.Send(); } else { string screenName; int userId; string accessToken; if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userId, out accessToken)) { //Sucess. Get information var info = TwitterConsumer.GetUserInfo(userId, accessToken); var profile = UniversalProfile.ProfileFromTwitter(info); RedirectToReturnUrl(context, returnUrl, profile); } else { RedirectToReturnUrl(context, returnUrl, UniversalProfile.FromError(new Exception("Login failed"))); } } } }
public LoginProfile ProcessAuthoriztion(HttpContext context, IDictionary <string, string> @params) { var token = context.Request["oauth_token"]; if (string.IsNullOrEmpty(token)) { var request = TwitterConsumer.StartSignInWithTwitter(TwitterSignIn, false); request.Send(); } else { string screenName; int userId; string accessToken; if (TwitterConsumer.TryFinishSignInWithTwitter(TwitterSignIn, out screenName, out userId, out accessToken)) { //Sucess. Get information var info = TwitterConsumer.GetUserInfo(TwitterSignIn, userId, accessToken); var profile = ProfileFromTwitter(info); return(profile); } return(LoginProfile.FromError(new Exception("Login failed"))); } return(null); }
private void HandleTwitterResponse() { string screenName; int userId; if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userId)) { AuthenticatedUser(screenName, "", screenName, userId.ToString(CultureInfo.CurrentCulture), "Twitter"); } }
public BasicUserData ProcessAuthRequest(ProcessAuthenticationContext context) { string screenName; int userId; var consumer = new TwitterConsumer(context.SessionStorage); return (consumer.TryFinishSignInWithTwitter(out screenName, out userId) ? new BasicUserData { UserId = userId.ToString(CultureInfo.InvariantCulture), UserName = screenName, PictureUrl = string.Format("http://api.twitter.com/1/users/profile_image/{0}.png", screenName) } : null); }
public ActionResult Index() { if (TwitterConsumer.IsTwitterConsumerConfigured) { string screenName; int userId; string accessToken; if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userId, out accessToken)) { var user = Session.Query <User>().Search(x => x.TwitterId, userId.ToString()).SingleOrDefault(); if (user == null) { user = new User(); user.Id = Guid.NewGuid(); user.TwitterId = userId.ToString(); user.RegisteredOn = DateTime.UtcNow; } user.Name = screenName; user.OAuthAccessToken = accessToken; user.LastSignIn = DateTime.UtcNow; Session.Store(user); Session.SaveChanges(); FormsAuthentication.SetAuthCookie(screenName, false); if (HttpContext.Request.UrlReferrer != null && string.IsNullOrWhiteSpace(HttpContext.Request.UrlReferrer.AbsoluteUri) == false) { return(Redirect(HttpContext.Request.UrlReferrer.AbsoluteUri)); } return(RedirectToAction("Index", "Home")); } else { TwitterConsumer.StartSignInWithTwitter(false).Send(); } } return(RedirectToAction("Index", "Home")); }
public ActionResult RsvpTwitterFinish(Guid id) { string screenName; int userId; if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userId)) { var dinner = dinnerReadModel.GetDinnerById(id); // NOTE: The alias we've generated for this user isn't guaranteed to be unique. string alias = "@" + screenName; if (!dinner.IsUserRegistered(alias)) { var rsvpForDinnerCommand = new RsvpForDinnerCommand { DinnerId = id, AttendeeName = alias }; commandService.RsvpForDinner(rsvpForDinnerCommand); } } return(RedirectToAction("Details", "Dinners", new { id })); }
protected void Page_Load(object sender, EventArgs e) { if (TwitterConsumer.IsTwitterConsumerConfigured) { this.MultiView1.ActiveViewIndex = 1; if (!IsPostBack) { string screenName; int userId; if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userId)) { this.loggedInPanel.Visible = true; this.loggedInName.Text = screenName; // In a real app, the Twitter username would likely be used // to log the user into the application. ////FormsAuthentication.RedirectFromLoginPage(screenName, false); } } } }
// GET: /RSVP/RsvpTwitterFinish public ActionResult RsvpTwitterFinish(int id) { string screenName; int userId; if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userId)) { var dinnerRepository = new DinnerRepository(); Dinner dinner = dinnerRepository.GetDinner(id); // NOTE: The alias we've generated for this user isn't guaranteed to be unique. string alias = "@" + screenName; if (!dinner.IsUserRegistered(alias)) { RSVP rsvp = new RSVP(); rsvp.AttendeeName = alias; dinner.RSVPs.Add(rsvp); dinnerRepository.Save(); } } return(RedirectToAction("Details", "Dinners", new { id = id })); }
// // GET: /Account/LogOn public ActionResult LogOn() { string screenName; int userID; if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userID)) { string returnUrl = Request.QueryString["ReturnUrl"]; FormsAuthentication.SetAuthCookie(screenName, false); if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/") && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\")) { return(Redirect(returnUrl)); } else { return(RedirectToAction("Index", "Home")); } } return(TwitterConsumer.StartSignInWithTwitter(true).AsActionResult()); }