/// <summary>
    /// Logs activity "purchase" for all items.
    /// </summary>
    /// <param name="shoppingCartInfoObj">Shopping cart</param>
    /// <param name="contactId">Contact ID</param>
    private void TrackActivityPurchasedProducts(ShoppingCartInfo shoppingCartInfoObj, int contactId)
    {
        // Check if shopping contains any items
        if ((shoppingCartInfoObj == null) || (shoppingCartInfoObj.IsEmpty))
        {
            return;
        }
        // Loop through all products and log activity
        var variables = AnalyticsContext.ActivityEnvironmentVariables;

        foreach (ShoppingCartItemInfo cartItem in shoppingCartInfoObj.CartProducts)
        {
            string   skuName  = ResHelper.LocalizeString(cartItem.SKU.SKUName) + " (ID#:" + cartItem.SKUID + ")";
            Activity activity = new ActivityPurchasedProduct(skuName, cartItem, variables);
            if (activity.Data != null)
            {
                activity.Data.ContactID = contactId;
                activity.CheckViewMode  = false;
                activity.Log();
            }
        }
    }
 /// <summary>
 /// Logs activity "purchase" for all items.
 /// </summary>
 /// <param name="shoppingCartInfoObj">Shopping cart</param>
 /// <param name="contactId">Contact ID</param>
 private void TrackActivityPurchasedProducts(ShoppingCartInfo shoppingCartInfoObj, int contactId)
 {
     // Check if shopping contains any items
     if ((shoppingCartInfoObj == null) || (shoppingCartInfoObj.IsEmpty))
     {
         return;
     }
     // Loop through all products and log activity
     var variables = AnalyticsContext.ActivityEnvironmentVariables;
     foreach (ShoppingCartItemInfo cartItem in shoppingCartInfoObj.CartProducts)
     {
         string skuName = ResHelper.LocalizeString(cartItem.SKU.SKUName) + " (ID#:" + cartItem.SKUID + ")";
         Activity activity = new ActivityPurchasedProduct(skuName, cartItem, variables);
         if (activity.Data != null)
         {
             activity.Data.ContactID = contactId;
             activity.CheckViewMode = false;
             activity.Log();
         }
     }
 }