Пример #1
0
        public void OnPreInit(System.Web.UI.Page page, ContentItem item)
        {
            var engine = page.GetEngine();

            if (item != null && engine.Config.Sections.Management.Collaboration.ActivityTrackingEnabled)
            {
                engine.AddActivity(new ManagementActivity {
                    Operation = Operation, PerformedBy = page.User.Identity.Name, Path = item.Path, ID = item.ID
                });
            }

            var collaboration = engine.Config.Sections.Management.Collaboration;

            if (!collaboration.ActivityTrackingEnabled)
            {
                return;
            }

            var script = string.Format(@"
setInterval(function() {{ 
	$.get('{0}?activity={4}&{1}={2}', function(result){{ 
		try {{ 
			n2 && n2.context && n2.context(result) 
		}} catch (ex) {{ console.log(ex); }} }}).fail(function(result){{ try {{ n2 && n2.failure && n2.failure(result) }} catch (ex) {{ console.log(ex); }} }}); }}, {3});
", Url.ResolveTokens(collaboration.PingPath), PathData.SelectedQueryKey, new SelectionUtility(page, engine).SelectedItem.Path, collaboration.PingInterval * 1000, Operation);

            page.InitComplete += (s, e) => N2.Resources.Register.JavaScript(page, script, N2.Resources.ScriptOptions.DocumentReady);
        }