public SannsynUpdateService(global::EPiServer.Logging.ILogger log, SannsynConfiguration configuration, BackendService backendService) { _log = log; _configuration = configuration; _backendService = backendService; _logSendData = _configuration.LogSendData; }
public SannsynOrderIndexerService(global::EPiServer.Logging.ILogger log, SannsynConfiguration configuration, ISannsynUpdateService sannsynUpdateService) { _log = log; _configuration = configuration; _sannsynUpdateService = sannsynUpdateService; }
public void Initialize(InitializationEngine context) { SannsynConfiguration sannsynConfiguration = ServiceLocator.Current.GetInstance <SannsynConfiguration>(); if (sannsynConfiguration.ModuleEnabled) { OrderContext.Current.OrderGroupUpdated += Current_OrderGroupUpdated; } }
private void ConfigureContainer(ConfigurationExpression container) { SannsynConfiguration sannsynConfiguration = ServiceLocator.Current.GetInstance <SannsynConfiguration>(); if (sannsynConfiguration.ModuleEnabled) { container.For <IRecommendedProductsService>().Use <SannsynRecommendedProductsService>(); } }
public BackendService(ILogger log, SannsynConfiguration configuration) { _log = log; _configuration = configuration; if (string.IsNullOrEmpty(_version)) { _version = this.GetType().Assembly.GetName().Version.ToString(); } }
public SannsynCatalogIndexService(ReferenceConverter referenceConverter, IContentLoader contentLoader, SannsynConfiguration sannsynConfiguration, ISannsynUpdateService sannsynUpdateService, ICurrentMarket currentMarket, ILogger logger ) { _referenceConverter = referenceConverter; _contentLoader = contentLoader; _configuration = sannsynConfiguration; _sannsynUpdateService = sannsynUpdateService; _currentMarket = currentMarket; _logger = logger; _bulkSize = 100; }
protected virtual string GenerateClickUrl(Guid userId, string productCode, List <string> parentCategories) { SannsynConfiguration config = ServiceLocator.Current.GetInstance <SannsynConfiguration>(); //Example url: // http://episerver.sannsyn.com/jsrecapi/1.0/tupleupdate/epicphoto/admin/canon-5d-m3/click/photo/catclick/dslr/catclick string serviceUrl = config.ServiceUrl.ToString() + "jsrecapi/1.0/tupleupdate/" + config.Service; string clickUrl = string.Format("{0}/{1}/{2}/click", serviceUrl, userId, productCode); foreach (string category in parentCategories) { clickUrl = string.Format("{0}/{1}/catclick", clickUrl, category); } return(clickUrl); }
public void InitializeHttpEvents(HttpApplication application) { SannsynConfiguration sannsynConfiguration = ServiceLocator.Current.GetInstance <SannsynConfiguration>(); if (sannsynConfiguration.ModuleEnabled) { for (int i = 0; i < application.Modules.Count; i++) { ProfileModule module = application.Modules[i] as ProfileModule; if (module != null) { module.MigrateAnonymous += OnMigrateAnonymous; _log.Debug("Initializing Anonymous Migration Module"); } } } }
public static IHtmlString TrackSannsynProductExposures(this HtmlHelper helper) { SannsynConfiguration config = ServiceLocator.Current.GetInstance <SannsynConfiguration>(); if (config.ModuleEnabled) { ICustomerService customerService = ServiceLocator.Current.GetInstance <ICustomerService>(); ExposedRecommendationsScript scriptHandler = new ExposedRecommendationsScript(helper.ViewContext.HttpContext, config, customerService); string recScript = scriptHandler.GetExposedRecommendationsScript(); if (string.IsNullOrEmpty(recScript) == false) { string htmlString = String.Format("<script type=\"text/javascript\">\r\n\r{0}</script>\r", recScript); return(new HtmlString(htmlString)); } } return(new HtmlString(string.Empty)); }
public SannsynAdminService(global::EPiServer.Logging.ILogger log, SannsynConfiguration configuration, BackendService backendService) { _log = log; _configuration = configuration; _backendService = backendService; }
public RecommendationService(BackendService backendService, SannsynConfiguration configuration) { _backendService = backendService; _configuration = configuration; }
public ClientScriptFactory(SannsynConfiguration configuration, IContentLoader contentLoader) { _configuration = configuration; _contentLoader = contentLoader; }
public SannsynMenuProvider(SannsynConfiguration configuration) { _configuration = configuration; }
protected string GetExposedRecommendationsScriptImpl(HttpContextBase context, SannsynConfiguration config, ICustomerService customerService) { StringBuilder sb = new StringBuilder(); ExposureTracker tracker = new ExposureTracker(); var recommendations = tracker.GetTrackedExposures(context); if (recommendations.Any() == false) { return(null); } sb.AppendLine("var sannsynService = '" + config.Service + "';"); sb.AppendLine("var sannsynTrackedId = '" + customerService.GetCurrentUserId() + "';"); string script = @" function trackRecommendationExposure(recommendations, recommenderName) { var ouronscroll = function(){ ssas_track_visibility(recommendations, recommenderName, sannsynService, sannsynTrackedId); }; var oldonscroll = window.onscroll; // don't overwrite old onScroll method, (if it exists) if (oldonscroll != null) { window.onscroll = function() { oldonscroll.apply(window); ouronscroll.apply(window) }; } else { window.onscroll = function() { ouronscroll.apply(window); }; } // finally, do an initial check for visibility, since onscroll could be never happening: ouronscroll.apply(window); } function trackRecClick(recommendation) { ssas_click(sannsynService, sannsynTrackedId, recommendation); } "; sb.Append(script); foreach (var group in recommendations.GroupBy(r => r.RecommenderName)) { List <string> productCodes = new List <string>(); foreach (var value in group) { productCodes.Add(value.ProductCode); } string recName = "rec_" + group.Key; string exposures = string.Format("var {0} = ['{1}'];", recName, string.Join("', '", productCodes)); string call = string.Format("trackRecommendationExposure({0}, '{1}');", recName, group.Key); sb.AppendLine(exposures); sb.AppendLine(call); } return(sb.ToString()); }
public ExposedRecommendationsScript(HttpContextBase context, SannsynConfiguration config, ICustomerService customerService) { _context = context; _config = config; _customerService = customerService; }