/// <summary> /// Executes checks which need to run for every request e.g. notifyLogin if CMS is running the session and extending the session if Gigya is managing it. /// </summary> /// <param name="context"></param> /// <param name="settings"></param> public static void ProcessRequestChecks(HttpContext context, IGigyaModuleSettings settings = null) { var currentNode = SiteMapBase.GetCurrentNode(); if (currentNode != null && currentNode.IsBackend) { return; } // don't need to do anything if the user is editing content in the CMS var identity = ClaimsManager.GetCurrentIdentity(); if (identity.IsBackendUser) { return; } if (context.Items.Contains(_executedProcessRequestKey)) { return; } context.Items[_executedProcessRequestKey] = true; var settingsHelper = new GigyaSettingsHelper(); var logger = LoggerFactory.Instance(); var membershipHelper = new GigyaMembershipHelper(new GigyaApiHelper(settingsHelper, logger), logger); var accountHelper = new GigyaAccountHelper(settingsHelper, logger, membershipHelper, settings); accountHelper.LoginToGigyaIfRequired(); accountHelper.UpdateSessionExpirationCookieIfRequired(context); }
public static void ValidateAndLoginToGigyaIfRequired(HttpContext context, IGigyaModuleSettings settings = null) { if (context.Items.Contains(_checkedIfLoginRequiredKey)) { return; } context.Items[_checkedIfLoginRequiredKey] = true; var settingsHelper = new GigyaSettingsHelper(); var logger = LoggerFactory.Instance(); var membershipHelper = new GigyaMembershipHelper(new GigyaApiHelper(settingsHelper, logger), logger); var accountHelper = new GigyaAccountHelper(settingsHelper, logger, membershipHelper, settings); accountHelper.LoginToGigyaIfRequired(); }