Sitefinity

Skip to end of metadata
Go to start of metadata

Overview

Sitefinity is an ASP.NET content management and marketing analytics platform designed to maximize the agility needed to succeed in today’s rapidly changing digital marketplace. It provides developers and IT teams the tools they need to support enterprise-level digital marketing, optimizing the customer journey by delivering seamless personalized experiences across different technologies and devices.

The GConnector for Sitefinity is designed to help you implement Gigya Registration-as-a-Service (RaaS) in your Sitefinity websites as quickly and easily as possible.

With the GConnector, you can easily implement such features as registration, authentication, profile management, data analytics and third-party integrations. Increase registration rates and identify customers across devices, consolidate data into rich customer profiles, and provide better service, products and experiences by integrating data into marketing and service applications.

The rich user profile information gained through Gigya can also be channeled into Digital Experience Cloud for analysis and new audience insights.

Versions

This GConnector supports Sitefinity version 9.0.6010.x and 10.0.6400. 

Installation and Implementation Guide

1. Set Up Your Gigya Account

Before you begin setting up the GConnector in your site, do the following:

  • Set up your Gigya account for RaaS (see guide).
  • Create an Application Key and Application Secret in the Gigya console (see instructions).

2. Install the Connector

  1. Create a new project in Sitefinity project manager and install the licence. 
  2. Open the project in Visual Studio and save the solution (.sln) file. 
  3. Right-click References and select Manage NuGet Packages
  4. Make sure the package source is nuget.org and type "gigya" in the search box.
     
  5. The search results include several Gigya.Sitefinity.Core packages. Select the package that corresponds to your Sitefinity version and click Install. For example, if you are using Sitefinity 9.2.6200 you would install Gigya.Sitefinity.Core.9.2.6200.
  6. Build your project in Visual Studio.

These steps also apply when you update your Sitefinity 9.x or 10.x version and need to recompile the Gigya project.

3. Create an Encryption Key

The GConnector encrypts your Gigya credentials using AES and stores them securely in the database.

In order to do this, you need to provide a secret string – this can be any string you want. The Gigya Connector will create an encryption key based on this string and use it to encrypt your Gigya credentials.

To provide the string:

  1. Go to your site's root directory and edit the web.config file.
  2. Choose one of the following options:
    • Option 1: Specify the string directly in the web.config file by adding a line like the following in the <appSettings> section. Instead of "my secret" enter a string of your choice.

      <add key="Gigya.Encryption.Key" value="my secret" />
    • Option 2: Specify the full path or relative path to a text file that contains the secret string by adding a line like the following in the <appSettings> section. You specify a relative path by using a tilde "~", e.g.: ~/App_Data/key.txt.:

      <add key="Gigya.Encryption.KeyLocation" value="\\server1\share\key.txt" />
  3. Save your changes.

If you change settings that are related to the encryption key, such as the folder path, or re-generate the key, you may need to re-enter your application key and secret in the CMS configuration settings.

4. Configure Gigya Connector Settings

Authentication Protocol in Sitefinity 10.0 only

If you are setting up the GConnector for Sitefinity 10.x, you need to change the authentication protocol to SimpleWebToken: 

  1. In Sitefinity's backend, go to Administration > Settings > Advanced.
  2. Under Authentication protocol, make sure that SimpleWebToken is selected.
     
  3. Save changes.
  4. Reset your IIS application pool.

Gigya Settings

To configure the GConnector settings, in the Sitefinity Dashboard, go to Administration > Settings > Gigya.

See the table below for descriptions of all the additional settings.

 Click to enlarge screenshot

 

Required

Parameter Name

Description

API Key

The Gigya API Key for your site, as it is displayed in the Gigya admin console in the Dashboard screen (see screenshot).

Click image to enlarge

Application Key

The Gigya Application Key that the Gigya Connector will use to connect to Gigya. See instructions for creating an Application Key.

Application Secret

The Gigya Application Secret that was generated for you along with the Application Key.

This value will be encrypted in the database.

Language

Select the language that Gigya interface elements, such as screen-sets, will be displayed in.

Special options:

  • Select Other if your desired language does not appear in the list but it is supported by Gigya (e.g. a language that Gigya added after the current version of the Gigya Connector was released). You will then be able to enter the language code in a text box.
  • Select Auto to have the Gigya Connector choose the language based on the page language in the CMS.

Default: English.

Language Fallback

If you have set Language to Auto, select the language to be used if the page language is not supported by Gigya. Default: English.

For a list of the languages in which Gigya is available see Advanced Customizations and Localization.

Data Center

Select the Gigya Data Center with which your site is associated. If your site's Data Center is not on the list, select Other and specify the URL of your Data Center in the text box that is displayed. See Finding Your Site's Data Center for more information.

Redirect URL

A URL that the user will be redirected to after logging in or registering. If left blank, the current page will be reloaded.

Logout URL

A URL that the user will be redirected to after logging out. If left blank, the current page will be reloaded.

Session ManagementSelect whether user login sessions are led by Gigya or by the CMS. If Gigya leads the session, you may also want to configure the session expiration. If the CMS leads the session, some additional configuration may be required.

Session Expiration

The maximum Gigya login session length (in seconds). Default is 0, meaning that when Gigya manages the session, the user session expires when the browser is closed. See Session Management and Expiration below for more information. When the session is led by the CMS, you should set a relatively long Gigya session.

Global parameters

Any extra parameters to configure Gigya. These parameters will set Gigya's Global Conf object and should be specified in JSON format. See the Global Conf documentation for information on which parameters are available. For example:

{ "enabledProviders": "facebook,twitter" }

Global Parameters settings override any other settings. For example, if you set a session expiration value using the Global Parameters field, this will override whatever you set in the Session Expiration field. Use this field carefully.

Field Mapping

A table specifying which Gigya user data fields will be imported into the CMS. See the Field Mapping section below.

Debug Mode

Check to write debug information to the logs. See the Logs section below.

Enable Module

Uncheck to disable the Connector and prevent Gigya widgets from being rendered. Keep this checked to allow the Connector to work.

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Multisite and Global Settings

In a multisite environment you can use the global settings page to configure multiple sites quickly.

To configure global settings:

  1. In the Sitefinity dashboard, go to Administration > Settings > Gigya.
  2. In the left sidebar, select Global Settings.
  3. Choose your settings as needed and click Save Settings.

All your sites will inherit the global settings automatically.

If you have one or more sites that require their own settings, different from the global ones, configure them as follows:

  1. In the Sitefinity dashboard, go to Administration > Settings > Gigya.
  2. On the top of the page, you will see a message saying: "These settings are inherited from the Global Settings". Click the Break Inheritance button below the message.
    Click to enlarge screenshot

  3. Specify the settings for the site as needed and click Save Settings.

Session Management

User login sessions can be managed either by Gigya or by Sitefinity. Generally, managing the session means that the period in which the user is logged in is determined by the configurations of the managing system. For example, if Gigya is the session manager, and the Gigya session is terminated (e.g. the browser was closed) even though the time-dependent Sitefinity session is still running, Gigya will end the Sitefinity session.  In the same manner, if the user is logged into Gigya but not into Sitefinity, Gigya will log the user into Sitefinity. 

To choose the session manager: 

  1. Under Settings > Gigya, open the relevant settings page (usually the global settings page). 
  2. Under Session Management, choose the session manager. The default is Gigya. 

Gigya-Managed Session

You can set the maximum length of the user session under the Session Expiration field, or in the Global Parameters, whose definitions override all other definitions. Both are defined in the Gigya Settings screen. 

  • Session Expiration: By default, Session Expiration in Gigya is set to 0, meaning that the user session expires when the browser is closed. You may change this value to set a fixed session length (in seconds).
  • Global Parameters: Enter a value for the sessionExpiration parameter in JSON format. 

    This will set the sessionExpiration parameter in Gigya's Global Conf object. See the Global Conf documentation. 

Sitefinity-Managed Session

To define the session in Sitefinity:

  1. Open Administration > Settings > Advanced > Security
  2. Under AuthCookieTimeout, enter the length of the session, in minutes.
  3. Save your changes. 

When Sitefinity manages the session, it is mandatory to set a specified time to the Gigya session as well, i.e., do not leave the Session Expiration definition set to zero. Either define a value for it, or define session expiration in the global parameters. When Sitefinity leads the session, we recommend defining the Gigya session to be at least as long as the Sitefinity definition and preferably longer.

5. Implement the Gigya Widgets

The Connector creates five widgets: Gigya Settings, Gigya Login, Gigya Logout, Gigya Register, and Gigya Edit Profile.

Gigya Settings Widget

The Gigya Settings widget must be present on every page as this is what renders the Gigya JavaScript.

This widget does not have any settings to configure.

Pages in Sitefinity are based on an MVC or WebForms template, or a hybrid template which supports both MVC and WebForms widgets. The Gigya Settings widget can be added only to pages that support MVC: MVC-only pages, or hybrid pages. Apply the following instructions according to the template used for the page.

Adding the Widget to MVC Pages

We recommend adding the Gigya Settings widget directly to the code, rather than adding separately to each template, as it only needs to be done once. This can only be done for in Pure MVC mode. 

To add the Gigya Settings widget directly to the code:

  1. Find the Razor layout file that your site uses. If you haven’t done any customization Sitefinity will use the default.cshtml template which is located at \ResourcePackages\Bootstrap\MVC\Views\Layouts.
  2. In the head section of the view, add @Html.Action("Index", "GigyaSettings")
    Your head section should now look something like:

    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
        <meta charset="utf-8" />
        <title></title>
    
        @Html.Section("head")
        @Html.StyleSheet(URL.Content("~/ResourcePackages/Bootstrap/assets/dist/css/styles.min.css"), "head")
        @Html.Action("Index", "GigyaSettings")
    </head>

Adding the Widget to Hybrid Pages

Adding the Gigya Settings widget to hybrid pages can only be done in the Sitefinity admin UI, and not in the code. To do so: 

  1. In Sitefinity, open Design > Templates. 
  2. Click on the relevant hybrid tempate. 
  3. Under Drag Widgets on the right hand side, scroll down and open the Gigya menu. 
  4. Drag the Gigya Settings widget and drop it into the topmost section of the template. 
  5. Publish the template. 

After publishing the template, you can create pages based on this template and add the Gigya Login, Gigya Registration and Gigya Edit Profile widgets to those pages. 

To learn more about the hybrid template, see Sitefinity documentation.

Gigya Login, Gigya Register, and Gigya Edit Profile Widgets

These widgets render Gigya's Login screen-set, Gigya's Registration screen-set, and Gigya's Edit Profile screen-set, respectively. See RaaS - Default Screen-Set Flows for an introduction to these screen-sets.

The screen-sets can be either directly embedded in the page or rendered as a login button that the user can click to bring up a pop-up window.

The following screenshot shows a Sitefinity site with the Gigya Register widget configured to render a button saying "Register now". The user has clicked "Register Now" and Gigya's registration screen-set is displayed in a pop-up:

Gigya LoginClick to enlarge screenshot


Gigya RegisterClick to enlarge screenshot


Gigya Edit ProfileClick to enlarge screenshot


To use the widgets, drag a widget onto the page and click Edit to change the settings:

Required?SettingDescription
Redirect Page (After Login)

Specify a URL that the user will be redirected to after logging in or registering. Leave blank to use to use the URL specified in the Connector Settings.

Screen-SetIf you have a custom screen-set that you want to use instead of the Gigya default screen-set (there is a default screen-set for Login/Registration and a default one for Edit Profle), specify its name here.
Mobile Screen-SetIf you have a screen-set that you want to use for mobile devices instead of the Gigya default, specify its name here. The default Gigya screen-sets are responsive and work for both desktop and mobile devices.
Start ScreenSpecify the first screen to display, if it is different than the default start screen of your chosen screen-set.
Embedded Screen or ButtonSelect whether to display the screen-set embedded in the page or to display a button which, when clicked, will bring up the screen-set in a pop-up window.
Button LabelIf you chose Button: specify the text of the button.
Generate ContainerIf you chose Embedded: check this checkbox to have an HTML container generated for the screen-set to be displayed in. Uncheck it to use an existing container.
Container IDIf you chose Embedded and unchecked Generate Container: specify the ID of an existing HTML element on the page (usually a DIV) in which you want the screen-set to be displayed.

The look of the buttons can be customized. See Customizing the Widget Buttons below.

Gigya Logout

This widget renders a customizable Logout button on the page:

To use the widget, drag it onto the page and click Edit to change the settings:

 Required?SettingDescription
Logout Page (After Logout)

Specify a URL that the user will be redirected to after logging out through this button. Leave blank to use the URL specified in the Connector Settings.

Button Label

Specify the text of the button.

The look of the buttons can be customized. See Customizing the Widget Buttons below.

Removing the Connector

You can deactivate the GConnector as follows: 

  1. In the Sitefinity Dashboard, go to Administration > System > Modules and Services.
  2. Scroll down to "Gigya Module" and select Actions > Deactivate.

Afterward you may remove the GConnector DLL files from the bin folder.

Customization

Customizing the Widget Buttons

Look and Feel

The look and feel of the Gigya Login, Gigya Logout, Gigya Register, and Gigya Edit Profile widget buttons can be customized using CSS.

Error Message

When the widgets encounter an error they display a generic error message: ""Sorry an error occurred. Please try again.". This message can be configured through Sitefinity's label management pages. For an introduction to labels, see the Sitefinity documentation.

To modify the error message:

  1. In the Sitefinity Dashboard, go to Administration > System > Labels & Messages.
  2. In the Filter by type sidebar on the right, select Gigya.
  3. In the list on the left, click the ErrorMessage label. 
  4. In the Edit Label page, enter the new text in the desired language(s) and select Save Changes.
     


HTML Markup

For more advanced customization, you can change the HTML markup of the Gigya Login, Gigya Logout, Gigya Register, and Gigya Edit Profile widgets manually, by creating a new Index.cshtml view in your web project at the appropriate place shown below. In that case the Connector will load the customized view instead of the default. An overridden view should still render the same hidden values as the default and maintain the same IDs, as these are used by the client side script to attach event handlers.

WidgetView LocationDefault View Source Code
Gigya Login\Mvc\Views\GigyaLogin\Index.cshtml
@model Gigya.Module.Mvc.ViewModels.GigyaLoginViewModel
 
@if (!string.IsNullOrEmpty(Model.ContainerId)) {
	<div id="@Model.GeneratedContainerId"
data-gigya-container-id="@Model.ContainerId" class="gigya-embedded-screen" data-gigya-screen="@Model.ScreenSet"
data-gigya-mobile-screen="@Model.MobileScreenSet" data-gigya-start-screen="@Model.StartScreen"></div> } else { <button type="button" data-gigya-screen="@Model.ScreenSet"
data-gigya-mobile-screen="@Model.MobileScreenSet" data-gigya-start-screen="@Model.StartScreen" class="gigya-login">
@Model.Label</button> } <input type="hidden" class="gigya-logged-in-url" value="@Model.LoggedInUrl" />
Gigya Register\Mvc\Views\GigyaRegister\Index.cshtml
@model Gigya.Module.Mvc.ViewModels.GigyaRegisterViewModel
 
@if (!string.IsNullOrEmpty(Model.ContainerId)) {
	<div id="@Model.GeneratedContainerId" 
data-gigya-container-id="@Model.ContainerId"
class="gigya-embedded-screen" data-gigya-screen="@Model.ScreenSet"
data-gigya-mobile-screen="@Model.MobileScreenSet" data-gigya-start-screen="@Model.StartScreen"></div> } else { <button type="button" class="gigya-register"
data-gigya-screen="@Model.ScreenSet" data-gigya-mobile-screen="@Model.MobileScreenSet" data-gigya-start-screen="@Model.StartScreen">@Model.Label</button> } <input type="hidden" class="gigya-logged-in-url" value="@Model.LoggedInUrl" />
Gigya Edit Profile\Mvc\Views\GigyaEditProfile\Index.cshtml
@model Gigya.Module.Mvc.ViewModels.GigyaEditProfileViewModel
 
@if (!string.IsNullOrEmpty(Model.ContainerId)) {
	<div id="@Model.GeneratedContainerId" class="gigya-embedded-screen"
data-gigya-container-id="@Model.ContainerId" data-update-profile="true" data-gigya-screen="@Model.ScreenSet"
data-gigya-mobile-screen="@Model.MobileScreenSet" data-gigya-start-screen="@Model.StartScreen"></div> } else { <button type="button" class="gigya-edit-profile"
data-gigya-screen="@Model.ScreenSet" data-gigya-mobile-screen="@Model.MobileScreenSet"
data-gigya-start-screen="@Model.StartScreen">
@Model.Label</button> }
 Gigya Logout\Mvc\Views\GigyaLogout\Index.cshtml
@model Gigya.Module.Mvc.ViewModels.GigyaLogoutViewModel
 
<button type="button" class="gigya-logout">@Model.Label</button>
<input type="hidden" class="gigya-logged-out-url" value="@Model.LoggedOutUrl" />

Roles and Permissions

When you install the Connector, it creates a new role called Gigya Major Admin.  The Application Secret can only be modified by Administrators and users with the Gigya Major Admin role.

To grant a user the Gigya Major Admin role:

  1. In the Sitefinity Dashboard, go to Administration > User Management > Users.
  2. Select the desired user from the list.
  3. In the Edit User page, scroll down to the Roles section and select the Gigya Major Admin checkbox.
  4. Click Save Changes.

Field Mapping

By default, the Gigya Connector mirrors the following data fields from Gigya to Sitefinity for every user:

  • First name
  • Last name
  • email

To have additional fields mirrored into Sitefinity:

  1. In the Sitefinity Dashboard, go to Administration > Settings > Gigya.
  2. Under Field Mapping, click Add new mapping.

  3. Specify the Gigya field name that you want to mirror, e.g. profile.country.

    Gigya offers a variety of user data fields, divided into three objects:
     DescriptionHow to Refer to These Fields
    Account object (see documentation)The main Account object contains general fields such as the Gigya UID, time created, last login etc.
    It also contains the Profile and Data objects.
    <fieldname>
    Profile Object (see documentation)Holds personal data such as name, gender, age, address and more.profile.<fieldname>
    Data objectCan be used to hold custom data about the user.data.<fieldname>

    The field you specify cannot be a complex object or array such as profile.phones. To map arrays and objects, use a hook function (see Using Hooks for Advanced Field Mapping).

  4. Specify the name of the Sitefinity field into which you want to mirror the data. See Sitefinity User Profiles for information about user fields in Sitefinity.

Note:

  • If the field type in Gigya doesn't match the field type in Sitefinity, the Connector will cast the value into the Sitefinity field type.
  • Make sure the field length in Sitefinity corresponds with what has been set in Gigya. If you attempt to add 100 characters from Gigya into 50 characters in Sitefinity, the fields won’t be updated from Gigya. An exception will be thrown and added to the Sitefinity logs.
  • In a multisite environment, you have the option of setting a global field mapping, and then overriding it for specific sites that need their own mapping.

Using Hooks for Advanced Field Mapping

Before a field value from Gigya is mirrored into Sitefinity, it can be modified by adding code that responds to Gigya's event. This allows you to customize your field mapping even further and to deal with complex object fields and/or fields that require reformatting.

For example, say you want to save the user's birth date in a Sitefinity field called birthDate (type: DateTime). Gigya does not have a birth date field; instead, it offers three fields called "profile.birthDay", "profile.birthMonth", and "profile.birthYear".

To map Gigya's birthDay, birthMonth and birthYear fields into a single Sitefinity field, do the following:

  1. Add this "dummy" or "placeholder" field mapping in the Gigya Settings page:

  2. Add event-based code that will be carried out whenever "profile.birthDay" is being imported from Gigya. This code modifies profile.birthDay into a DateTime value that is composed of profile.birthDay, profile.birthMonth, and profile.birthYear. This new value will then be saved in the Sitefinity field BirthDate according to the Field Mapping settings.

    Set the GigyaValue property of the IMapGigyaFieldEvent object to the value that you want saved to Sitefinity. Make sure the event is only subscribed to if e.CommandName == "RegisterRoutes" as Sitefinity fires the Initialized event multiple times.

    See the code below for an example of how to implement this. Usually this code would be added to Global.asax.cs:

    protected void Application_Start(object sender, EventArgs e) {
    	Bootstrapper.Initialized += Bootstrapper_Initialized;
    }
    
    private void Bootstrapper_Initialized(object sender, Telerik.Sitefinity.Data.ExecutedEventArgs e) {
    	if (e.CommandName == "RegisterRoutes") {
    		EventHub.Subscribe<IMapGigyaFieldEvent>(GigyaMembershipHelper_MapGigyaField);
    	}
    }
    
    private void GigyaMembershipHelper_MapGigyaField(IMapGigyaFieldEvent @event) {
        switch (@event.GigyaFieldName) {
    		case "profile.country": {
    			if (@event.GigyaValue != null) {
    			var value = @event.GigyaValue.ToString();
    			@event.GigyaValue = value == "United Kingdom" ? 826 : 0;
    			}
    		}
    		return;
    	}
        var profile = @event.GigyaModel.profile;
        switch (@event.SitefinityFieldName){
    		case "BirthDate":
    			@event.GigyaValue = new DateTime(Convert.ToInt32(profile.birthYear), Convert.ToInt32(profile.birthMonth), Convert.ToInt32(profile.birthDay));
    			return;
    	}
    }

Limitations and Development Considerations

Digital Experience Cloud

No custom code has been added to enhance the Digital Experience Cloud (DEC). Using out of the box functionality, Sitefinity pushes user data into DEC, although this can be extended to include more data and user actions.

See Sitefinity’s Digital Experience Cloud documentation.

Known Issue: A problem in Digital Experience Cloud causes DEC data to be merged for different Gigya users who log in from the same browser on a shared computer. A ticket has been opened for DEC support.

General

  • Sitefinity’s default output cache policy is two minutes. The Gigya Login, Gigya Logout, Gigya Register, and Gigya Edit Profile widgets uses a custom controller that disables the cache.The Gigya Settings widget will be cached by Sitefinity which means that the global parameters, API key, language and session timeout from the settings page will be cached for a default time of two minutes.To change this behavior, you can update the type attribute of the Gigya Settings widget in ToolboxesConfig.config to match the type attribute of Gigya Login/Logout Button.
  • When the module is installed, the 2 widgets mentioned above are added to the ToolboxesConfig.config file in a section named Gigya.If you wanted to you could override these controllers and create your own versions.This would be done by creating a new class that inherits from the controller you want to override and updating the controllerType property.
  • When a user performs Gigya actions (login, logout, profile update) the gigya-sitefinity.js script is used to call an AccountController. The path to this is specified at gigyaSitefinity.baseURL: '/api/gigya/account/'. This could also be overridden to us a custom controller.

Note on Sitefinity Upgrades: When a new Sitefinity version is released, a new Sitefinity Project Manager is available for download. This will guide the developer through the upgrade process.

SSO

Gigya Single Sign-On (SSO) is supported. See Site Groups and Single Sign-On for more information.

Logs

The Gigya Connector writes its logs into the Sitefinity log files (which can be viewed at <site root>/App_Data/Sitefinity/Logs/).

Each log entry related to Gigya starts with "[Gigya]:".

The Connector has two logging modes:

  • Regular mode: error messages from Gigya are logged into the error.log file in the Logs folder.
  • Debug mode: all calls to the Gigya API and responses from Gigya are logged into debug.log file in the Logs folder.
    See the following screenshot for an example debug.log entry:
    Click screenshot to enlarge

To enable/disable Debug mode:

  1. In the Sitefinity Dashboard, go to Administration > Settings > Gigya.
  2. Check or uncheck the Debug Mode checkbox.

Following is a list of possible log messages:

ScenarioMessageLog Type
Attempt to login or register when RaaS disabledRaaS not enabled so login aborted.Debug
Invalid signature from clientInvalid user signature for login request.Debug
Attempt to update profile when RaaS disabledRaaS not enabled so login aborted.Debug
User authenticated with SitefinityUser [UserId] successfully logged into Sitefinity.Debug
Invalid edit profile request from the clientInvalid login request. ModelState Errors:Debug
Invalid login request from the clientInvalid login request. ModelState Errors:Debug
User logged outcurrentIdentity.Name + " successfully logged out."Debug
Attempt to render settings widget while RaaS disabledRaaS disabled so GigyaSettings not added to page.Debug
Signature from Gigya RESTful call is invalidInvalid user signature for login request. API call: {0}. CallId: {1}.Debug
Gigya RESTful call requestRequest API call:Debug
Gigya RESTful call responseResponse from API call: {0}. CallId: {1}. Response: {2}.Debug
Gigya field value is null so Sitefinity field not updatedGigya field \"{0}\" is null so profile field not updated.Debug
Sitefinity field doesn't exist but has been mapped on the settings pageSitefinity field \"{0}\" not found.Debug
Field type mismatch - after writing the Gigya value to Sitefinity profile object the updated value is checked against Gigya's value.Sitefinity field [{0}] type doesn't match Gigya field [{1}] type. You may need to add a conversion using EventHub.Subscribe<IMapGigyaFieldEvent>Error
Error occurred when calling getAccountInfo from the serverFailed to getAccountInfoError
User couldn't be logged into SitefinityUser [{0}] not logged into Sitefinity. Reason: {1}.Error
Gigya API key not specified on settings pageGigya API key not specified. Check settings on Administration -> Settings -> GigyaError
Exception thrown when calling RESTful methodAPI call: {0}. CallId: {1}. Error: {2}.Error
Exception thrown updating Sitefinity profileFailed to update profile for userId:Error
Exception thrown trying to set Sitefinity profile fieldCouldn't set Sitefinity profile value for [{0}] and gigya field [{1}].Error
Exception thrown trying to update Sitefinity profile after creationFailed to create profile for userId:Error

 

Troubleshooting

General

  • The server clock must be set to GMT+0, otherwise errors and unexpected behaviors may occur. We recommend using NTP daemon to ensure that the server time is accurate.
  • Gigya screen-sets must entirely replace any login, registration etc. screen provided by the CMS. The CMS registration, login and edit profile screens should not be rendered at all. Otherwise, the Gigya screen is placed inside the CMS screen and both will behave unexpectedly. 
  • After changing the value of the application key, you should re-enter the application secret.

Sitefinity-Related Troubleshooting

  • Turn on Debug mode in the settings page and check the debug logs. Also, check Sitefinity's error log. Logs can be found in ~/App_Data/Sitefinity/Logs.
  • To check if the GConnector is installed, open the browser developer tools. In the console, run gigyaSitefinity. If an error is displayed, the connector is not installed. 
     
  • If you are experiencing login issues, open the browser developer tools. In the network tab, check the response to the login request. This should start with /api/gigya/account and the expected response code is 200. If this is the case, the login issue is unrelated to Gigya. 
  • If the login button widget isn’t rendering, check that Enable RaaS has been set to true on the settings page for the current site (or global settings if they are inherited).
  • If there is a "gigyaSitefinity is undefined" JavaScript error, make sure the Gigya settings widget has been added to the page or template in Sitefinity or directly to the layout page in code.
  • If the Login/Logout buttons aren’t working, check that you haven’t overridden the Connector views and changed some of the button id’s.
  • If a Gigya field is not being saved to Sitefinity, check the field mappings on the settings page. Make sure the names are correct and they are the same type e.g. don’t try to map a Gigya field that’s a string to a Sitefinity int. If this is attempted and debug mode is enabled, it will be logged.
  • Use gigyaSitefinity.authenticated to check if the user session is active in Sitefinity.
  • If changes in configuration don't show up in Sitefinity, restart the app pool. If you are running the system locally, do this by compiling the code. 
  • To check which template a page is using, open the page in Sitefinity and click on the Layout tab.
  • Make sure that all the details in the Gigya Settings page are correct. 
  • Ensure that there are no firewall rules preventing access to and from Gigya's servers. 
  • If you are using load balancing, ensure that you have followed Sitefinity's load balancing guide. If Sitefinity is not correctly configured for load balancing, you will see issues where a user appears logged into one server, but are logged out after the request hits the other server. 
  • In a load balanced setup, double-check to make sure you comply with the configure security Sitefinity guidelines. 

 

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save

Save