Example #1
0
        public override void Process(SearchAnalyticsArgs args)
        {
            if (string.IsNullOrWhiteSpace(args.SearchParameters.Keyword))
            {
                return;
            }

            if (!Tracker.IsActive)
            {
                if (!Tracker.Enabled)
                {
                    return;
                }
                Tracker.StartTracking();
            }

            var keywords      = args.SearchParameters.Keyword;
            var pageEventData = new PageEventData("Search", AnalyticsIds.SearchEvent.Guid)
            {
                ItemId  = args.TabItem.ID.Guid,
                Data    = keywords,
                DataKey = keywords,
                Text    = keywords
            };
            var interaction = Tracker.Current?.Session?.Interaction;

            if (interaction != null)
            {
                interaction.CurrentPage.Register(pageEventData);
            }
        }
Example #2
0
        public void PerformAnalytics(TabItem tab, AnalyticsParameters parameters)
        {
            Assert.ArgumentNotNull(tab, nameof(tab));
            Assert.ArgumentNotNull(parameters, nameof(parameters));

            // Init Query
            var args = new SearchAnalyticsArgs
            {
                TabItem          = tab,
                SearchParameters = parameters.SearchParameters ?? new SearchParameters(),
                SearchResponse   = parameters.SearchResponse ?? new SearchResponse()
            };

            CorePipeline.Run(Pipeline.SearchAnalytics, args);
        }
Example #3
0
 public abstract void Process(SearchAnalyticsArgs args);