private void DoGoogleAnalyticsTracking() { if (order == null) { return; } if (order.AnalyticsTracked) { return; } if (store == null) { return; } try { mojoGoogleAnalyticsScript analytics = Page.Master.FindControl("mojoGoogleAnalyticsScript1") as mojoGoogleAnalyticsScript; if (analytics == null) { DoAsyncTracking(); return; } AnalyticsTransaction transaction = new AnalyticsTransaction(); transaction.OrderId = order.OrderGuid.ToString(); transaction.City = order.CustomerCity; transaction.Country = order.CustomerCountry; transaction.State = order.CustomerState; transaction.StoreName = siteSettings.SiteName + " - " + store.Name; transaction.Tax = order.TaxTotal.ToString(CultureInfo.InvariantCulture); transaction.Total = order.OrderTotal.ToString(CultureInfo.InvariantCulture); foreach (OrderOffer offer in order.OrderOffers) { AnalyticsTransactionItem item = new AnalyticsTransactionItem(); item.Category = string.Empty; item.OrderId = order.OrderGuid.ToString(); item.Price = offer.OfferPrice.ToString(CultureInfo.InvariantCulture); item.ProductName = offer.Name; item.Quantity = offer.Quantity.ToString(CultureInfo.InvariantCulture); item.Sku = offer.OfferGuid.ToString(); transaction.Items.Add(item); } if (transaction.IsValid()) { analytics.Transactions.Add(transaction); Order.TrackAnalytics(order.OrderGuid); } } catch (Exception ex) { log.Error("error tracking order in google analytics.", ex); } }
private void Page_Load(object sender, System.EventArgs e) { LoadSettings(); GetGuidFromQueryString(); if (this.registrationConfirmationGuid == Guid.Empty) { WebUtils.SetupRedirect(this, SiteRoot); return; } SiteUser siteUser = SiteUser.GetByConfirmationGuid(siteSettings, registrationConfirmationGuid); if (SiteUser.ConfirmRegistration(this.registrationConfirmationGuid)) { this.lblMessage.Text = Resources.Resource.RegisterConfirmMessage; if (siteUser != null) { NewsletterHelper.VerifyExistingSubscriptions(siteUser); NewsletterHelper.ClaimExistingSubscriptions(siteUser); if ((windowsLive != null) && (liveUser != null)) { HandleWindowsLiveConfirmation(siteUser); } } AnalyticsAsyncTopScript asyncAnalytics = Page.Master.FindControl("analyticsTop") as AnalyticsAsyncTopScript; if (asyncAnalytics != null) { asyncAnalytics.PageToTrack = "/RegistrationConfirmed.aspx"; } else { mojoGoogleAnalyticsScript analytics = Page.Master.FindControl("mojoGoogleAnalyticsScript1") as mojoGoogleAnalyticsScript; if (analytics != null) { analytics.PageToTrack = "/RegistrationConfirmed.aspx"; } } } else { WebUtils.SetupRedirect(this, SiteRoot); return; } }