/// <summary> /// Gets the login url. /// </summary> /// <param name="settings">The Facebook application settings.</param> /// <param name="httpContext">The http context.</param> /// <param name="parameters">The login parameters.</param> /// <returns>The login url.</returns> internal virtual protected Uri GetLoginUrl(IFacebookApplication settings, HttpContextBase httpContext, IDictionary <string, object> parameters) { if (settings == null) { throw new ArgumentNullException("settings"); } if (httpContext == null) { throw new ArgumentNullException("httpContext"); } var authorizer = new CanvasAuthorizer(settings, httpContext) { ReturnUrlPath = this.ReturnUrlPath, CancelUrlPath = this.CancelUrlPath, LoginDisplayMode = this.LoginDisplayMode }; if (!String.IsNullOrEmpty(this.Permissions)) { authorizer.Permissions = this.Permissions.Replace(" ", String.Empty).Split(','); } return(authorizer.GetLoginUrl(parameters)); }
protected override void OnInit(EventArgs e) { base.OnInit(e); if (Session["FacebookUserId"] == null) { FacebookApp facebookApp = new FacebookApp(); CanvasAuthorizer authorizor = new CanvasAuthorizer(facebookApp); authorizor.ReturnUrlPath = "default.aspx"; authorizor.Perms = "publish_stream"; //,offline_access authorizor.Authorize(Request, Response); IsLoggedIn = authorizor.IsAuthorized(); if (IsLoggedIn) { Session["FacebookUserId"] = facebookApp.UserId; } else { Session["FacebookUserId"] = 0; } } FacebookUserId = (long)Session["FacebookUserId"]; IsLoggedIn = FacebookUserId > 0; }
protected internal override Uri GetLoginUrl(IFacebookApplication settings, HttpContextBase httpContext, IDictionary <string, object> parameters) { var authorizer = new CanvasAuthorizer(settings, httpContext) { ReturnUrlPath = ReturnUrlPath, CancelUrlPath = CancelUrlPath, LoginDisplayMode = LoginDisplayMode }; if (!String.IsNullOrEmpty(Permissions)) { authorizer.Permissions = Permissions.Replace(" ", String.Empty).Split(','); } if (string.IsNullOrEmpty(CancelUrlPath)) { // set it to this same url instead of going to facebook.com var canvasUrlBuilder = new CanvasUrlBuilder(settings, httpContext.Request); var currentPathAndQuery = canvasUrlBuilder.CurrentCanvasPathAndQuery; if (currentPathAndQuery.Contains("?")) { var parts = currentPathAndQuery.Split('?'); if (parts.Length == 2 && !string.IsNullOrEmpty(parts[1])) { var queryStrings = FacebookUtils.ParseUrlQueryString(parts[1]); // remove oauth 2 error querystrings. // error_reason=user_denied&error_denied=access_denied&error_description=The+user+denied+your+request. if (queryStrings.ContainsKey("error_reason")) { queryStrings.Remove("error_reason"); } if (queryStrings.ContainsKey("error_denied")) { queryStrings.Remove("error_denied"); } if (queryStrings.ContainsKey("error_description")) { queryStrings.Remove("error_description"); } currentPathAndQuery = parts[0] + "?" + FacebookUtils.ToJsonQueryString(queryStrings); } } authorizer.CancelUrlPath = currentPathAndQuery; } return(authorizer.GetLoginUrl(null)); }
protected void Page_Load(object sender, EventArgs e) { CheckIfFacebookAppIsSetupCorrectly(); var auth = new CanvasAuthorizer { Permissions = new[] { "user_about_me" } }; if (auth.Authorize()) { ShowFacebookContent(); } }
protected void Page_Load(object sender, EventArgs e) { var auth = new CanvasAuthorizer { Perms = "publish_stream" }; FacebookLayer fb = new FacebookLayer(auth); if (auth.Authorize()) { if (Request.QueryString["action"] != null) { LocationActions(Request.QueryString, fb); } ShowFacebookContent(fb); } }
internal virtual protected Uri GetLoginUrl(IFacebookApplication settings, HttpContextBase httpContext, IDictionary <string, object> parameters) { Contract.Requires(settings != null); Contract.Requires(httpContext != null); this.ReturnUrlPath = FacebookConfigurationSection.Current.ReturnUrlPath; this.CancelUrlPath = FacebookConfigurationSection.Current.CancelUrlPath; var authorizer = new CanvasAuthorizer(settings, httpContext) { ReturnUrlPath = this.ReturnUrlPath, CancelUrlPath = this.CancelUrlPath, LoginDisplayMode = this.LoginDisplayMode }; if (!String.IsNullOrEmpty(this.Permissions)) { authorizer.Permissions = this.Permissions.Replace(" ", String.Empty).Split(','); } return(authorizer.GetLoginUrl(parameters)); }
/* * public FacebookLayer() * { * authorizer = new CanvasAuthorizer { Perms = "publish_stream" }; * if (authorizer.Authorize()) * { * fbClient = new FacebookClient(CurrentSession.AccessToken); * User = new FacebookUser(); * try * { * var me = (IDictionary<string, object>) fbClient.Get("me"); * * User.FacebookId = (string) me["id"]; * User.FacebookName = (string) me["first_name"]; * } * catch * { * isAccessTokenValid = false; * return; * } * isAccessTokenValid = true; * IDictionary<string, object> friendsData = (IDictionary<string, object>) fbClient.Get("me/friends"); * facebookData = new FacebookData(User, friendsData); * SortedFriends = facebookData.SortedFriends; * } * } */ public FacebookLayer(CanvasAuthorizer auth) { this.authorizer = auth; if (this.authorizer.Authorize()) { fbClient = new FacebookClient(CurrentSession.AccessToken); User = new FacebookUser(); try { var me = (IDictionary <string, object>)fbClient.Get("me"); User.FacebookId = (string)me["id"]; User.FacebookName = (string)me["first_name"]; } catch { isAccessTokenValid = false; return; } isAccessTokenValid = true; IDictionary <string, object> friendsData = (IDictionary <string, object>)fbClient.Get("me/friends"); facebookData = new FacebookData(User, (IList <object>)friendsData["data"]); } }
protected void Page_Load(object sender, EventArgs e) { if (Page.IsPostBack) { CheckIfFacebookAppIsSetupCorrectly(); var auth = new CanvasAuthorizer { Permissions = new[] { "user_about_me" } }; if (auth.Authorize()) { ShowFacebookContent(); } } else { AmazonSimpleDB sdb = GetSDB(); // Should I clean out the AWS domain state? if (Page.Request.Params["delaws"] == "1") { //Deleting a domain DeleteDomainRequest deleteDomainAction = new DeleteDomainRequest().WithDomainName("ZigMeRecos"); sdb.DeleteDomain(deleteDomainAction); } // Now read from the AWS domain and populate the dropdown list // First check to see if a domain contain service types exists. if not then create it and populate it // Listing domains /*ListDomainsResponse sdbListDomainsResponse = sdb.ListDomains(new ListDomainsRequest()); * if (sdbListDomainsResponse.IsSetListDomainsResult()) * { * ListDomainsResult listDomainsResult = sdbListDomainsResponse.ListDomainsResult; * * if (!listDomainsResult.DomainName.Contains("ZigMeServiceTypes")) * { * } * else * { * String selectExpression = "Select * From ZigMeServiceTypes"; * SelectRequest selectRequestAction = new SelectRequest().WithSelectExpression(selectExpression); * SelectResponse selectResponse = sdb.Select(selectRequestAction); * if (selectResponse.IsSetSelectResult()) * { * SelectResult selectResult = selectResponse.SelectResult; * foreach (Item item in selectResult.Item) * { * foreach (Amazon.SimpleDB.Model.Attribute attribute in item.Attribute) * { * if (attribute.IsSetName() && attribute.IsSetValue()) * { * } * } * } * } * } * }*/ } }
public FacebookLogin() { _facebookApp = new FacebookApp(); _authorizer = new CanvasAuthorizer(_facebookApp); _authorizer.Perms = "publish_stream,offline_access"; }