CMS.StrandsRecommender.xml

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>CMS.StrandsRecommender</name>
    </assembly>
    <members>
        <member name="T:CMS.StrandsRecommender.StrandsCatalogFeedSecurity">
            <summary>
            Handles credentials verifying for Strands Recommender catalog.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeedSecurity.CheckCredentials(System.Web.HttpContext)">
            <summary>
            Checks whether user is properly authenticated with username and password set in Strands settings. If user is not
            authenticated and
            username or password are set in Strands settings, user is prompted to authenticate and false is returned.
            </summary>
            <param name="context">HTTP context</param>
            <returns>True if authentication is disabled or user is properly authenticated; otherwise false</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeedSecurity.SetUnauthorizedStatus">
            <summary>
            Checks whether current status code is 319. If true, sets response status code to 401 Unauthorized, so the browser will prompt user to enter credentials.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.IStrandsCatalogCategoryMapper">
            <summary>
            Maps properties of the document to the ones used in the Strands catalog feed and other places.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.IStrandsCatalogCategoryMapper.GetItemCategory(CMS.DocumentEngine.TreeNode)">
            <summary>
            Retrieves property which will be used as category field in the Strands catalog feed.
            </summary>
            <param name="catalogItem">Document</param>
            <returns>Category field</returns>
        </member>
        <member name="T:CMS.StrandsRecommender.DefaultStrandsCatalogCategoryMapper">
            <summary>
            Default implementation of <see cref="T:CMS.StrandsRecommender.IStrandsCatalogCategoryMapper"/> which returns NodeClassID as category field.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.DefaultStrandsCatalogCategoryMapper.GetItemCategory(CMS.DocumentEngine.TreeNode)">
            <summary>
            Retrieves NodeClassID which will be used as category field in the Strands catalog feed.
            </summary>
            <param name="catalogItem">Document</param>
            <returns>Category field</returns>
            <exception cref="T:System.ArgumentNullException">Parameter <paramref name="catalogItem"/> is null</exception>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsCatalogPropertiesMapper">
            <summary>
            Methods in this class map properties of the document to the ones used in the Strands catalog feed.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogPropertiesMapper.GetItemID(CMS.DocumentEngine.TreeNode)">
            <summary>
            Retrieves document NodeID which will be used as ItemID in the Strands catalog feed.
            Behavior of this method can't be changed because implementation of Strands integration is dependent on it.
            </summary>
            <param name="catalogItem">Document</param>
            <returns>ID of the catalog item</returns>
            <exception cref="T:System.ArgumentNullException">Parameter <paramref name="catalogItem"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogPropertiesMapper.GetItemCategory(CMS.DocumentEngine.TreeNode)">
            <summary>
            Retrieves NodeClassID which will be used as category field in the Strands catalog feed.
            Returned value can be changed easily by using different implementation of IStrandsCatalogCategoryMapper.
            This can be done by calling ObjectFactory&lt;IStrandsCatalogCategoryMapper&gt;.SetDefaultObjectTypeTo&lt;NameOfDifferentImplementation&gt;() somewhere during Init phase.
            </summary>
            <param name="catalogItem">Document</param>
            <returns>Category field specified by implementation of <see cref="T:CMS.StrandsRecommender.IStrandsCatalogCategoryMapper"/></returns>
            <exception cref="T:System.ArgumentNullException">Parameter <paramref name="catalogItem"/> is null</exception>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsRecommenderModuleMetadata">
            <summary>
            Represents the Strands Recommender module metadata.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderModuleMetadata.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsSetupCall">
            <summary>
            Loads settings related with automatic catalog upload, creates call data object and performs setup call to Strands Recommender.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSetupCall.DoWithDefaults">
            <summary>
            Updates Strands Recommender settings with automatic setup call. Uses values provided in settings or the default, hard-coded ones.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSetupCall.LogSetupCallResult(System.Threading.Tasks.Task{CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum})">
            <summary>
            Logs the setup call result
            </summary>
            <param name="task">Setup call task</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSetupCall.CreateDefaultSettingsData(System.String)">
            <summary>
            Creates new instance of StrandsSetupCallData and fills it with default values (the ones, that cannot be changed in settings).
            </summary>
            <param name="cultureSuffix">Culture suffix used in definition of field mappings</param>
            <returns>Instance of StrandsSetupCallData filled with predefined values</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSetupCall.LogSetupCallResult(CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum)">
            <summary>
            Handles setup call response and perform info/exception logging.
            </summary>
            <param name="response">Response given by Strands Recommender after setup call is performed</param>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsRecommenderHandlers">
            <summary>
            Contains handlers of the Strands recommendation module.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderHandlers.Init">
            <summary>
            Connects handlers to events.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderHandlers.RememberDelayedRendering(System.Object,CMS.Base.CMSEventArgs{CMS.Activities.IActivityInfo})">
            <summary>
            Remembers information that purchased or cart update events happened, so tracking script can be rendered later.
            </summary>
            <remarks>
            This is needed, because there comes a redirect after mentioned activities are performed. This means that HTTP response is 302 and is not rendered on the client side and thus JavaScript is not executed.
            Therefore information that event happened is stored to user's cookie and is retrieved later, when response is 200.
            </remarks>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderHandlers.SetUnauthorizedStatus(System.Object,System.EventArgs)">
            <summary>
            Checks whether current status code is 319. If true, sets response status code to 401 Unauthorized, so the browser will prompt user to enter credentials.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.Internal.StrandsEventsMemory">
            <summary>
            When it isn't right time to render Strands tracking event (for example the HTTP response status is 302, so JavaScripts wouldn't be executed), this class
            can remember the information about the event and when the time is right, it will provide information that event tracking is pending.
            </summary>
            <remarks>
            Class uses Cookies internally to remember pending events.
            This is needed, because there comes a redirect after items are purchased or shopping cart is updated. This means that HTTP response is 302 and is not rendered on the client side and thus JavaScript is not executed.
            Therefore information that event happened is stored to user's cookie and is retrieved later, when response is 200.
            </remarks>
        </member>
        <member name="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.RememberCartUpdateEvent">
            <summary>
            Stores information that cart update event should be rendered. After calling this method, <see cref="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.IsCartUpdateEventPending"/> method will return
            true once for the same user. Information will be stored in Cookies.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.IsCartUpdateEventPending">
            <summary>
            Checks if cart update event should be rendered. This method returns true only once and after that assumes that event has been rendered.
            </summary>
            <returns>True if cart update event should be rendered</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.RememberItemsPurchasedEvent(System.Int32)">
            <summary>
            Stores information that items purchased event should be rendered. After calling this method, <see cref="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.IsItemsPurchasedEventPending(System.Int32@)"/> method will return
            true once for the same user. Information will be stored in Cookies.
            </summary>
            <param name="lastOrderID">ID of the order which was made</param>
        </member>
        <member name="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.IsItemsPurchasedEventPending(System.Int32@)">
            <summary>
            Checks if item purchased event should be rendered. This method returns true only once and after that assumes that event has been rendered.
            </summary>
            <param name="lastOrderID">Output parameter which will be set to the value passed to the <see cref="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.RememberItemsPurchasedEvent(System.Int32)"/> method when storing information about pending event</param>
            <returns>True if cart update event should be rendered</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.RememberEvent(System.String,System.IConvertible)">
            <summary>
            Stores information about pending event to the cookie.
            </summary>
            <param name="trackingEventCode">Event code</param>
            <param name="eventData">Associated data which will be stored and returned when <see cref="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.IsEventPending``1(System.String,``0@)"/> method succeeds. Has to implement IConvertible to be able to cast value to string with invariant culture</param>
        </member>
        <member name="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.IsEventPending``1(System.String,``0@)">
            <summary>
            Checks if the particular event is pending by checking data in the cookie. If this method returns true, it automatically removes data from cookie, so next time it returns false again.
            </summary>
            <typeparam name="TEventData">Type of associated data, has to implement IConvertible</typeparam>
            <param name="trackingEventCode">Code of the event</param>
            <param name="eventData">Associated data stored when event was set</param>
            <returns>True if event was pending, otherwise false</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.Internal.StrandsEventsMemory.GetTrackingEventCookieKey(System.String)">
            <summary>
            Gets key which will be used to store information about pending events.
            </summary>
            <param name="trackingEventCode">Code of the event</param>
            <returns>Generated key</returns>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsSetupCallData">
            <summary>
            Wraps all necessary data required for setup call performing.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.ValidationToken">
            <summary>
            Validation token.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.Version">
            <summary>
            Version sent to Strands Recommender. CMS build version should be used.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.FeedActive">
            <summary>
            True if updating feed is enabled, false otherwise.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.FeedFrequency">
            <summary>
            Frequency with which should be feed sending to the Strands Recommender.
            </summary>
            <remarks>
            Has to be in specific format {d|w|h}{\d+}.
            d stands for daily update, number has to be from interval 0-23 (eg. d0, d15, d23)
            w stands for weekly update, number has to be from interval 0-6 (mondays to sundays, eg. w0, w3, w6)
            h stands for hourly update, number has to be from interval 1-12 (every n hour, eg. h1, h7, h12)
            </remarks>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.Type">
            <summary>
            Type parameter of setup call, 'kentico' value is required by Strands.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.FeedUrl">
            <summary>
            Uri of product catalog feed.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.Tracking">
            <summary>
            Events which should be tracked by Strands Recommender.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.Fields">
            <summary>
            Contains pairs for mapping values from feed to the Strands Recommender.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.Pagination">
            <summary>
            Number of products per page.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.CatalogFeedUsername">
            <summary>
            Username required to access catalog feed page.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsSetupCallData.CatalogFeedPassword">
            <summary>
            Password required to access catalog feed page.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum">
            <summary>
            Enumeration describes status code returned by Strands portal in API setup calls.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum.UnknownStatus">
            <summary>
            Occurs when no status code is present in document.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum.Success">
            <summary>
            Success response.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum.WrongApiId">
            <summary>
            Wrong api ID in setup call request.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum.MissingParameter">
            <summary>
            Missing required parameter in setup call request.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum.UnexpectedError">
            <summary>
            Unexpected error on Strands Recommender end.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsSetupCallStatusCodeEnum.WrongValidationToken">
            <summary>
            Wrong validation token in setup call request.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsCatalogFeed">
            <summary>
            Loads documents according to the settings and generates XML feed suitable for Strands. If offset and maxcount GET
            parameters are provided, the feed is paged.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsCatalogFeed.IsReusable">
            <summary>
            Gets whether this handler can be reused for other request. This property is required by IHttpHandler interface.
            </summary>
            <value>Always false</value>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.ProcessRequest(System.Web.HttpContext)">
            <summary>
            Processes request and generates XML feed of documents to the HTTP response.
            </summary>
            <param name="context">An HttpContext associated with this request</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.WriteCatalogToOutputStream(System.Web.HttpResponse,CMS.StrandsRecommender.StrandsCatalogFeed.PagingData)">
            <summary>
            Generates XML catalog and writes it to the output stream.
            </summary>
            <param name="response">Response of HTTP context</param>
            <param name="pagingData">Indicates if paging is enabled and what page shall be returned</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.ResolveProduct(CMS.StrandsRecommender.StrandsCatalogFeed.ItemData,System.Collections.Generic.List{CMS.Ecommerce.CurrencyInfo},CMS.PortalEngine.TransformationInfo,CMS.MacroEngine.MacroResolver)">
            <summary>
            Resolves macros in given product.
            </summary>
            <param name="product">Product to be resolved</param>
            <param name="currencies">Currencies which will be specified within product</param>
            <param name="transformationInfo">Transformation info containing macros</param>
            <param name="macroResolver">Macro resolver which will be used to resolve macros in text</param>
            <returns>Resolved XML string</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.GetCurrencies">
            <summary>
            Gets list containing all enabled currencies with set Exchange rate. If main currency is specified, it is added to the list.
            </summary>
            <returns>Collection of all available currencies</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.WriteCatalogBeginning(System.Xml.XmlTextWriter,System.Int32)">
            <summary>
            Writes beginning of XML file and appends feed description required by Strands.
            </summary>
            <param name="xmlTextWriter">Writer of XMl file</param>
            <param name="totalProducts">Total count of products in the database</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.GetPagedProducts(CMS.StrandsRecommender.StrandsCatalogFeed.PagingData)">
            <summary>
            Retrieves products from the database with the paging specified by the <paramref name="pagingData" /> applied.
            </summary>
            <param name="pagingData">Specification of the page which shall be retrieved</param>
            <returns>Catalog data with paging applied</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.GetAllProducts">
            <summary>
            Retrieves all products from the database.
            </summary>
            <returns>Catalog data with all products</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.GetCatalogItems(System.Collections.Generic.IEnumerable{CMS.DocumentEngine.TreeNode})">
            <summary>
            Creates Catalog items from the list of tree nodes which shall be included in the catalog.
            One tree node in <paramref name="includedTreeNodes" /> represents one language version of the document. Documents
            belonging to the same node will be grouped into one CatalogItem.
            </summary>
            <param name="includedTreeNodes">Documents (all language versions) included in the feed</param>
            <returns>
            List of items which shall be included in the catalog, containing node ID, language versions, SKU object and
            category of product
            </returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.GetBaseDocumentQuery">
            <summary>
            Creates MultiDocumentQuery with properties (path, document types, etc.) set to the values specified in settings.
            Only documents from current site are returned. Culture filter is not set.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.GetTransformationInfoFromSettings">
            <summary>
            Gets transformation info according to code name provided in settings.
            </summary>
            <exception cref="T:CMS.StrandsRecommender.StrandsException">Transformation provided in settings was not found or is not of type text</exception>
            <returns>Transformation info corresponding to settings value</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.GetPagingInfoFromQueryParameters">
            <summary>
            Returns information about paging which should be applied to the catalog feed.
            If pagination is enabled at Strands, request contains offset and maxcount parameters determining what products shall be
            included.
            If parameters are not present, it indicates that paging is not enabled.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsCatalogFeed.CatalogData">
            <summary>
            Holds all retrieved catalog items and count of the total items in database.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsCatalogFeed.ItemData">
            <summary>
            Holds data about one item in the catalog.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsCatalogFeed.PagingData">
            <summary>
            This class knows (contains information) if paging shall be performed and which page shall be retrieved when querying
            documents.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.PagingData.#ctor">
            <summary>
            Indicates that feed should not be paged.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsCatalogFeed.PagingData.#ctor(System.Int32,System.Int32)">
            <summary>
            Indicates that feed shall be paged and that number of documents specified by <paramref name="count" /> and starting
            from <paramref name="offset" /> shall be retrieved.
            </summary>
            <param name="offset">Number of documents which will be skipped</param>
            <param name="count">Maximum number of documents which will be retrieved</param>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsCatalogFeed.PagingData.Page">
            <summary>
            Gets 0-based page calculated from <see cref="P:CMS.StrandsRecommender.StrandsCatalogFeed.PagingData.Offset" /> and <see cref="P:CMS.StrandsRecommender.StrandsCatalogFeed.PagingData.Count" /> properties.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsException">
            <summary>
            Represents a general Strands exception.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsException.UIMessage">
            <summary>
            Message displayed in the UI to the user
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the Strands exception.
            </summary>
            <param name="message">The exception message.</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsException.#ctor(System.String,System.String)">
            <summary>
            Initializes a new instance of the Strands exception.
            </summary>
            <param name="message">The exception message.</param>
            <param name="uiMessage">The exception localized message.</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the Strands exception.
            </summary>
            <param name="message">The exception message.</param>
            <param name="innerException">The inner exception.</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsException.#ctor(System.String,System.String,System.Exception)">
            <summary>
            Initializes a new instance of the Strands exception.
            </summary>
            <param name="message">The exception message.</param>
            <param name="innerException">The inner exception.</param>
            <param name="uiMessage">The exception localized message.</param>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsPurchasedEventData">
            <summary>
            Class that stores specified data needed for Strands purchased event.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsPurchasedEventData.ItemID">
            <summary>
            ID of purchased item.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsPurchasedEventData.Price">
            <summary>
            Price of item.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsPurchasedEventData.Quantity">
            <summary>
            Quantity of purchased items.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsRecommenderUsageDataSource">
            <summary>
            Module usage tracking data source for Strands recommender module.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsRecommenderUsageDataSource.mSettingsToLog">
            <summary>
            Settings keys which are logged.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsRecommenderUsageDataSource.Name">
            <summary>
            Get the data source name.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderUsageDataSource.GetData">
            <summary>
            Get all module statistical data.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderUsageDataSource.GetSettingsUsage(System.Boolean)">
            <summary>
            Returns how many times is specific setting used with value which is not same as default value.
            Only settings on running sites (if <paramref name="global"/> is true), not hidden and not custom are retrieved.
            Only global settings when <paramref name="global"/> is false.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsSettings">
            <summary>
            Methods for accessing Strands Recommender settings.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.IsStrandsEnabled(System.String)">
            <summary>
            Gets boolean indicating if Strands module is enabled. Module is enabled if both API ID and Validation token are set in settings.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetApiID(System.String)">
            <summary>
            Gets Strands API ID from settings or null if not specified.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <returns>API ID if set, null when setting is empty</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetValidationToken(System.String)">
            <summary>
            Gets Strands Validation token from settings or null if not specified.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <returns>Validation token if set, null when setting is empty</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetTransformationInfo(System.String)">
            <summary>
            Gets transformation used to render XML feed.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
            <exception cref="T:CMS.StrandsRecommender.StrandsException">Transformation code name in settings is not set</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetWhereCondition(System.String)">
            <summary>
            Gets WHERE condition that restricts selection of products.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <returns>WHERE condition if set, empty string when setting is empty</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetPath(System.String)">
            <summary>
            Gets path to restrict documents selection.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <returns>Path if set, empty string when setting is empty</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetDocumentTypes(System.String)">
            <summary>
            Gets document types that will be rendered into Strands XML feed.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <returns>Document types array if set, empty array when setting is empty</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.IsAutomaticCatalogUploadEnabled(System.String)">
            <summary>
            Gets whether automatic download of catalog performed by Strands Recommender is enabled or not. If true, after setup call, Strands
            will automatically download XML feed. Downloading of feed is performed with frequency specified in <see cref="M:CMS.StrandsRecommender.StrandsSettings.GetAutomaticCatalogUploadFrequency(System.String)"/>.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetAutomaticCatalogUploadFrequency(System.String)">
            <summary>
            Gets frequency of automatic download performed by Strands Recommender of catalog. Usable only when <see cref="M:CMS.StrandsRecommender.StrandsSettings.IsAutomaticCatalogUploadEnabled(System.String)"/> is true,
            specifies frequency with which is catalog automatically updated.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.IsCatalogFeedAuthenticationEnabled(System.String)">
            <summary>
            Checks whether catalog feed protection is enabled in settings. Protection is enabled when either username or password are set.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetCatalogFeedUsername(System.String)">
            <summary>
            Gets username required to access Strands catalog feed page.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsSettings.GetCatalogFeedPassword(System.String)">
            <summary>
            Gets password required to access Strands catalog feed page.
            </summary>
            <param name="siteName">Site name where settings are checked</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="siteName"/> is null</exception>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsRecommenderModule">
            <summary>
            Represents StrandsRecommender module. This module handles integration with the Strands Recommender (http://recommender.strands.com/)
            and provides online store administrator the ability to enhance sales by automatically his recommending products to his customers.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderModule.#ctor">
            <summary>
            Default constructor.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsRecommenderModule.OnInit">
            <summary>
            Handles the module initialization.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsApiClient">
            <summary>
            Client for communication with Strands Recommender web services. API ID is always needed to communicate with service.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.WEB_TEMPLATES_URL">
            <summary>
            Strands API URL for obtaining all available web templates.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.SETUP_CALL_URL">
            <summary>
            Strands API URL for automation of settings.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.SUCCESS_RESPONSE_STATUS">
            <summary>
            Status text sent by Strands Recommender when successful response.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.TEMPLATE_TYPE_HOME">
            <summary>
            Key determining recommendation is of type Home.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.TEMPLATE_TYPE_CONFIRMATION">
            <summary>
            Key determining recommendation is of type Order confirmation.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.TEMPLATE_TYPE_CART">
            <summary>
            Key determining recommendation is of type Shopping cart/wishlist.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.TEMPLATE_TYPE_CATEGORY">
            <summary>
            Key determining recommendation is of type Category.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.TEMPLATE_TYPE_PRODUCT">
            <summary>
            Key determining recommendation is of type Product.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.TEMPLATE_TYPE_MISCELLANEOUS">
            <summary>
            Key determining recommendation is of type Miscellaneous.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.MAX_NUMBER_OF_ATTEMPTS">
            <summary>
            Maximal number of attempts to get XML document from Strands API if HTTP status 404 is returned.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.DELAY_BEFORE_NEXT_ATTEMPT">
            <summary>
            Defines the time span application will be waiting before making next attempt to load templates from Strands API.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsApiClient.mApiID">
            <summary>
            Strands API ID.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.#ctor(System.String)">
            <summary>
            Constructor.
            </summary>
            <param name="apiID">Strands API ID</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="apiID"/> is null</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.GetAvailableWebTemplates">
            <summary>
            Gets all available web templates for given API ID from Strands API.
            </summary>
            <returns>Collection containing all available web templates</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.DoSetupCallAsync(CMS.StrandsRecommender.StrandsSetupCallData)">
            <summary>
            The call sets up fields in Strands Recommender settings. Eg. number of products per page, frequency of catalog update,
            URL from which should Strands download the catalog, mapping between catalog feed elements and Strands fields etc.
            Most of the values are predefined and cannot be changed by user. Only exceptions are enabling/disabling of automatic
            download of catalog from Strands and frequency of this download.
            </summary>
            <param name="data">Setup data</param>
            <returns>Task with result of asynchronous call</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.GetResponseStatusCode(System.Threading.Tasks.Task{System.Net.WebResponse})">
            <summary>
            Gets the setup call response status code
            </summary>
            <param name="task">Setup task</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.GetExceptionStatusCode(System.Net.WebException)">
            <summary>
            Gets HTTP status code from given WebException.
            </summary>
            <param name="exception">Exception</param>
            <returns>HTTP status code or 0 if not available</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.CheckForTemplateCallSuccessfulResponse(System.Xml.Linq.XDocument)">
            <summary>
            Checks, whether response from Strands API when using template call is valid (Strands is returning status code 0).
            </summary>
            <param name="document">Document to be checked</param>
            <exception cref="T:CMS.StrandsRecommender.StrandsException">Response from Strands API is not successful</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.GetTemplateCallStatusCode(System.Xml.Linq.XDocument)">
            <summary>
            Gets status response from XML document when using template call.
            </summary>
            <param name="document">XML document obtained from Strands Recommender</param>
            <returns>Status of given document</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.GetSetupCallStatusCode(System.Xml.Linq.XDocument)">
            <summary>
            Gets status response from XML document when using setup call.
            </summary>
            <param name="document">XML document obtained from Strands Recommender</param>
            <returns>Status of given document</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.DownloadXDocument(System.String)">
            <summary>
            Gets XML document loading it from given API URL.
            </summary>
            <param name="url">API URL of XML document</param>
            <returns>XDocument representing XML document located on given API URL</returns>
            <exception cref="T:CMS.StrandsRecommender.StrandsException">API request fails (i.e. due to limited connectivity) or Strands returns code indicating error (i.e. invalid API ID)</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.GetElementValue(System.Xml.Linq.XElement,System.String)">
            <summary>
            Gets value of first element in container with tag name specified by <paramref name="element"/>.
            </summary>
            <param name="container">Container of element</param>
            <param name="element">Desired element</param>
            <returns>Value of given element</returns>
            <exception cref="T:CMS.StrandsRecommender.StrandsException">XML document does not contain expected element</exception>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.ResolveRecommendationType(System.String)">
            <summary>
            Determines type of recommendation template based on placement attribute sent by Strands.
            </summary>
            <param name="tpl">Template ID</param>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsApiClient.BuildSetupCallQuery(CMS.StrandsRecommender.StrandsSetupCallData)">
            <summary>
            Builds query for Strands setup call from given settings.
            </summary>
            <param name="data">Setup settings</param>
            <returns>Query containing every single setting as parameter</returns>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsTemplateCallStatusCodeEnum">
            <summary>
            Enumeration describes status code returned by Strands portal in API template calls.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsTemplateCallStatusCodeEnum.UnknownStatus">
            <summary>
            Occurs when no status code is present in document.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsTemplateCallStatusCodeEnum.Success">
            <summary>
            Success response.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsTemplateCallStatusCodeEnum.ErrorInTheRequestParameters">
            <summary>
            Error in request parameter response.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsTemplateCallStatusCodeEnum.ErrorValidatingCustomersApiID">
            <summary>
            Error in provided api ID response.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsTemplateCallStatusCodeEnum.UnexpectedError">
            <summary>
            Unexpected error response.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsTemplateCallStatusCodeEnum.EmailRecommendationsUnavailable">
            <summary>
            Email recommendations are not enabled for requested account due to licensing reasons.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsWebTemplateData">
            <summary>
            Data type for one web template given from all templates feed.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsWebTemplateData.ID">
            <summary>
            ID of template.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsWebTemplateData.Title">
            <summary>
            Title of template.
            </summary>
        </member>
        <member name="P:CMS.StrandsRecommender.StrandsWebTemplateData.Type">
            <summary>
            Type of template.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsWebTemplateTypeEnum">
            <summary>
            Enumeration describes type of recommendation widget.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsWebTemplateTypeEnum.Home">
            <summary>
            Home type, doesn't send any identifier
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsWebTemplateTypeEnum.Category">
            <summary>
            Category related type, sends category of currently visited page.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsWebTemplateTypeEnum.Product">
            <summary>
            Product related type, sends identifier of currently visited product.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsWebTemplateTypeEnum.Cart">
            <summary>
            Shopping cart related type, sends all items from shopping cart.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsWebTemplateTypeEnum.Order">
            <summary>
            Order confirmation related type, send all recently purchased items.
            </summary>
        </member>
        <member name="F:CMS.StrandsRecommender.StrandsWebTemplateTypeEnum.Miscellaneous">
            <summary>
            Miscellaneous type, not supported, recommendations with this type will be skipped.
            </summary>
        </member>
        <member name="T:CMS.StrandsRecommender.StrandsProductsProvider">
            <summary>
            Helper methods for fetching various data needed mainly by Strands Recommendation web part. In general, data are fetched from the contexts (i.e. EcommerceContext) and database.
            </summary>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsProductsProvider.GetItemIDsFromCurrentShoppingCart">
            <summary>
            Gets all products from current user shopping cart and finds corresponding nodes.
            </summary>
            <returns>Collection containing all node IDs representing current user shopping cart items</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsProductsProvider.GetItemsIDsFromRecentOrder">
            <summary>
            Gets all products from current customer/user most recent order and finds corresponding nodes.
            </summary>
            <returns>Collection containing all node IDs representing current customer/user most recent order</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsProductsProvider.GetCustomerRelatedToCurrentContact">
            <summary>
            Gets Customer ID related to current contact.
            </summary>
            <returns>ID of related customer</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsProductsProvider.GetNodeIDsForSKUs(System.Collections.Generic.IEnumerable{System.Int32})">
            <summary>
            Gets tree node for every SKU item given and returns its nodeID.
            </summary>
            <param name="skuIDs">Collection of SKU items</param>
            <returns>Collection containing nodeIDs of all tree nodes corresponding to given SKU items</returns>
        </member>
        <member name="M:CMS.StrandsRecommender.StrandsProductsProvider.GetSKURootID(CMS.Ecommerce.SKUInfo)">
            <summary>
            Get SKUID of SKU parent, if exists. Otherwise gets ID of SKU itself.
            </summary>
            <param name="sku">SKU should be ID taken from</param>
            <remarks>If SKU is of the type variant, it does not have connection with tree node, whose ID is used for item identification. Thus its SKU parent tree node ID has to be used instead</remarks>
            <returns>SKUParentID, if not null, SKUID otherwise</returns>
        </member>
    </members>
</doc>