public HttpResponseMessage RecycleApplication()
        {
            var apiResponse = new DTO.ApiResponse <bool>();

            try
            {
                if (DotNetNuke.Entities.Users.UserController.Instance.GetCurrentUserInfo().IsSuperUser)
                {
                    var log = new DotNetNuke.Services.Log.EventLog.LogInfo {
                        BypassBuffering = true, LogTypeKey = DotNetNuke.Services.Log.EventLog.EventLogController.EventLogType.HOST_ALERT.ToString()
                    };
                    log.AddProperty("Message", "Application Recycle triggered from the Control Panel");
                    DotNetNuke.Services.Log.EventLog.LogController.Instance.AddLog(log);

                    Config.Touch();

                    apiResponse.Success = true;
                }
            }
            catch (Exception err)
            {
                apiResponse.Success = false;
                apiResponse.Message = err.Message;

                Exceptions.LogException(err);
            }

            return(Request.CreateResponse(HttpStatusCode.OK, apiResponse));
        }
Exemple #2
0
        public static void AddLog(string Message, string stack, DotNetNuke.Entities.Modules.PortalModuleBase Module, System.Web.SessionState.HttpSessionState SS)
        {
            ELP = new DotNetNuke.Services.Log.EventLog.EventLogController();
            DotNetNuke.Services.Log.EventLog.LogTypeInfo LT = new DotNetNuke.Services.Log.EventLog.LogTypeInfo();
            LT.LogTypeDescription  = "Error en sistema...";
            LT.LogTypeFriendlyName = "Error en sistema...";
            LT.LogTypeKey          = "Dispensario";
            LT.LogTypeOwner        = "Administrador";

            DotNetNuke.Services.Log.EventLog.LogInfo LI = new DotNetNuke.Services.Log.EventLog.LogInfo();
            if (Module != null)
            {
                LI.LogPortalID = Module.PortalId;
                LI.LogUserID   = Module.UserId;
                LI.AddProperty("Usuario:", Module.UserInfo.Username);
            }
            else
            {
                LI.LogPortalID = 0;
                LI.LogUserID   = 1;
                LI.AddProperty("FromWebservice", "0000");
            }
            LI.LogTypeKey = "Dispensario";

            LI.AddProperty("Error", Message);
            LI.AddProperty("Stack", stack);

            if (SS != null)
            {
                for (int a = 0; a < SS.Count; a++)
                {
                    System.Web.Script.Serialization.JavaScriptSerializer JSC = new System.Web.Script.Serialization.JavaScriptSerializer();
                    string serializationtype = SS[a].GetType().Name;

                    string serialization = "";
                    //MAPA DE SERIALIZACIONES Y CASTEOS

                    if (serializationtype == "Paciente")
                    {
                        serialization = JSC.Serialize(SS[a] as Modelos.Paciente);
                    }
                    if (serializationtype == "String")
                    {
                        serialization = JSC.Serialize(SS[a] as String);
                    }

                    if (serialization == "")
                    {
                        serialization = "No se pudo serializar";
                    }



                    LI.AddProperty("From session Nro. " + a.ToString() + " and key " + SS.Keys[a] + " type [" + serializationtype + "] ", serialization);
                }
            }
            LI.BypassBuffering = true;

            ELP.AddLog(LI);
        }
 // DNN EventLog object
 // TODO: Needs work!
 public EventLog(DotNetNuke.Services.Log.EventLog.LogInfo e)
 {
     Id          = Guid.NewGuid();
     Title       = e.LogPortalName;
     Details     = e.LogProperties.ToString();
     DateCreated = e.LogCreateDate;
     Source      = EventLogSource.Db;
     Type        = EventLogType.Error;
 }
Exemple #4
0
        private static void sqlDependency_OnChange(object sender, SqlNotificationEventArgs e)
        {
            if (e.Info == SqlNotificationInfo.Insert)
            {
                var cntrl = new DotNetNuke.Services.Log.EventLog.EventLogController();

                int records   = 0;
                int pageSize  = 10;
                int pageIndex = 0;

                // Get DNN Logs
                //var dnnLogs = cntrl.GetLogs(PortalId, DotNetNuke.Services.Log.EventLog.EventLogController.EventLogType.HOST_ALERT.ToString(), pageSize, pageIndex, ref records);

                // else try manually
                var props = new DotNetNuke.Services.Log.EventLog.LogProperties();
                props.Deserialize("<LogProperties><LogProperty><PropertyName>Install Package:</PropertyName><PropertyValue>CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - Script</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Begin Sql execution</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Providers\\DataProviders\\SqlDataProvider\\00.00.01.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Providers\\\\DataProviders\\SqlDataProvider\\00.00.01.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Executing 00.00.01.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Start Sql execution: 00.00.01.SqlDataProvider file</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>End Sql execution: 00.00.01.SqlDataProvider file</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Providers\\DataProviders\\SqlDataProvider\\Uninstall.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Providers\\DataProviders\\SqlDataProvider\\Uninstall.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Finished Sql execution</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - Script</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - ResourceFile</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Expanding Resource file</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Edit.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Edit.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - License.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - License.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - module.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - module.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - ReleaseNotes.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - ReleaseNotes.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Settings.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Settings.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - View.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - View.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - App_LocalResources\\Edit.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - App_LocalResources/Edit.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - App_LocalResources\\Settings.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - App_LocalResources/Settings.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - App_LocalResources\\View.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - App_LocalResources/View.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Documentation\\Documentation.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Documentation/Documentation.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Documentation\\Documentation.html</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Documentation/Documentation.html</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Resource Files created</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - ResourceFile</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - Module</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Module registered successfully - CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - Module</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - Assembly</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Assembly registered - bin\\CCFileExplorer.dll</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - bin\\CCFileExplorer.dll</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - bin\\CCFileExplorer.dll</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - Assembly</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Installation committed</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Installation successful. - CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Deleted temporary install folder</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Installation successful.</PropertyValue></LogProperty></LogProperties>");

                var dnnLog = new DotNetNuke.Services.Log.EventLog.LogInfo()
                {
                    LogGUID         = Guid.NewGuid().ToString()
                    , LogTypeKey    = "HOST_ALERT"
                    , LogConfigID   = "95"
                    , LogUserID     = 0
                    , LogUserName   = "******"
                    , LogPortalID   = 0
                    , LogPortalName = null
                    , LogCreateDate = DateTime.UtcNow
                    , LogServerName = "Cass"
                    , LogProperties = props
                };
                var dnnLogs = new List <DotNetNuke.Services.Log.EventLog.LogInfo>()
                {
                    dnnLog
                };


                // Convert to EventLogs
                var logs = dnnLogs.Where(log => log.LogCreateDate >= SinceDate).Select(x => new EventLog(x)).ToList();
                // Broadcast
                LogHubController.Instance.BroadcastLogs(logs);

                SinceDate = DateTime.UtcNow;
            }

            //Call the RegisterNotification method again
            RegisterDependency();
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="portalSettings"></param>
        /// <returns></returns>
        public static TabInfo GetTabFromUrl(PortalSettings portalSettings)
        {
            var tc = new TabController();
            TabInfo tInfo = null;
            var url = HttpContext.Current.Request.Url.AbsoluteUri.Replace("?" + HttpContext.Current.Request.QueryString, "").Replace("http://", "").Replace("https://", "").Replace(portalSettings.PortalAlias.HTTPAlias,"").ToLower();

            try
            {
                int tabId;
                if (url.Contains("tabid"))
                {
                    tabId = Int32.Parse(Regex.Match(url, "tabid[=/](\\d+)", RegexOptions.IgnoreCase).Groups[1].Value);
                    tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                }
                else
                {

                    string strippedUrl = url;
                    do
                    {
                        tabId = TabController.GetTabByTabPath(portalSettings.PortalId, strippedUrl.Replace("/", "//").Replace("-", ""), portalSettings.CultureCode);
                        if (tabId != -1)
                        {
                            tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                            break;
                        }

                        var slashIndex = strippedUrl.LastIndexOf('/');
                        strippedUrl = slashIndex > 1 ? strippedUrl.Substring(0, slashIndex) : "";
                    } while (strippedUrl.Length > 0);

                    //if (url.Contains("/" + GetQuestionUrlName(portalSettings).ToLower() + "/"))
                    //{
                    //    var tabPath = url.Substring(0, url.IndexOf("/" + GetQuestionUrlName(portalSettings).ToLower() + "/"));
                    //    //TODO JS: The - replacement needs to be more generic.
                    //    tabPath = tabPath.Replace("/", "//").Replace("-","");
                    //    tabId = TabController.GetTabByTabPath(portalSettings.PortalId, tabPath, portalSettings.CultureCode);
                    //    tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                    //}
                    //else
                    //{
                    //    if (url.Contains("/" + GetTagUrlName().ToLower() + "/"))
                    //    {
                    //        var tabPath = url.Substring(0, url.IndexOf("/" + GetTagUrlName().ToLower() + "/"));
                    //        tabPath = tabPath.Replace("/", "//").Replace("-", "");
                    //        tabId = TabController.GetTabByTabPath(portalSettings.PortalId, tabPath, portalSettings.CultureCode);
                    //        tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                    //    }
                    //}
                }
            }
            catch (Exception ex)
            {
                DotNetNuke.Services.Exceptions.Exceptions.LogException(ex);
            }

            if (tInfo == null)
            {
                var lc = new DotNetNuke.Services.Log.EventLog.LogController();
                var logInfo = new DotNetNuke.Services.Log.EventLog.LogInfo
                                  {
                                      LogTypeKey = "ADMIN_ALERT",
                                      LogPortalID = portalSettings.PortalId
                                  };

                logInfo.AddProperty("DNNQA HTTP Module", "GetTabFromURL returned null. URL=" + url);
                lc.AddLog(logInfo);
            }

            return tInfo;
        }
Exemple #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="portalSettings"></param>
        /// <returns></returns>
        public static TabInfo GetTabFromUrl(PortalSettings portalSettings)
        {
            var     tc    = new TabController();
            TabInfo tInfo = null;
            var     url   = HttpContext.Current.Request.Url.AbsoluteUri.Replace("?" + HttpContext.Current.Request.QueryString, "").Replace("http://", "").Replace("https://", "").Replace(portalSettings.PortalAlias.HTTPAlias, "").ToLower();

            try
            {
                int tabId;
                if (url.Contains("tabid"))
                {
                    tabId = Int32.Parse(Regex.Match(url, "tabid[=/](\\d+)", RegexOptions.IgnoreCase).Groups[1].Value);
                    tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                }
                else
                {
                    string strippedUrl = url;
                    do
                    {
                        tabId = TabController.GetTabByTabPath(portalSettings.PortalId, strippedUrl.Replace("/", "//").Replace("-", ""), portalSettings.CultureCode);
                        if (tabId != -1)
                        {
                            tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                            break;
                        }

                        var slashIndex = strippedUrl.LastIndexOf('/');
                        strippedUrl = slashIndex > 1 ? strippedUrl.Substring(0, slashIndex) : "";
                    } while (strippedUrl.Length > 0);

                    //if (url.Contains("/" + GetQuestionUrlName(portalSettings).ToLower() + "/"))
                    //{
                    //    var tabPath = url.Substring(0, url.IndexOf("/" + GetQuestionUrlName(portalSettings).ToLower() + "/"));
                    //    //TODO JS: The - replacement needs to be more generic.
                    //    tabPath = tabPath.Replace("/", "//").Replace("-","");
                    //    tabId = TabController.GetTabByTabPath(portalSettings.PortalId, tabPath, portalSettings.CultureCode);
                    //    tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                    //}
                    //else
                    //{
                    //    if (url.Contains("/" + GetTagUrlName().ToLower() + "/"))
                    //    {
                    //        var tabPath = url.Substring(0, url.IndexOf("/" + GetTagUrlName().ToLower() + "/"));
                    //        tabPath = tabPath.Replace("/", "//").Replace("-", "");
                    //        tabId = TabController.GetTabByTabPath(portalSettings.PortalId, tabPath, portalSettings.CultureCode);
                    //        tInfo = tc.GetTab(tabId, portalSettings.PortalId, false);
                    //    }
                    //}
                }
            }
            catch (Exception ex)
            {
                DotNetNuke.Services.Exceptions.Exceptions.LogException(ex);
            }

            if (tInfo == null)
            {
                var lc      = new DotNetNuke.Services.Log.EventLog.LogController();
                var logInfo = new DotNetNuke.Services.Log.EventLog.LogInfo
                {
                    LogTypeKey  = "ADMIN_ALERT",
                    LogPortalID = portalSettings.PortalId
                };

                logInfo.AddProperty("DNNQA HTTP Module", "GetTabFromURL returned null. URL=" + url);
                lc.AddLog(logInfo);
            }

            return(tInfo);
        }
        private static void sqlDependency_OnChange(object sender, SqlNotificationEventArgs e)
        {
            if (e.Info == SqlNotificationInfo.Insert)
            {
                var cntrl = new DotNetNuke.Services.Log.EventLog.EventLogController();

                int records = 0;
                int pageSize = 10;
                int pageIndex = 0;

                // Get DNN Logs
                //var dnnLogs = cntrl.GetLogs(PortalId, DotNetNuke.Services.Log.EventLog.EventLogController.EventLogType.HOST_ALERT.ToString(), pageSize, pageIndex, ref records);

                // else try manually
                var props = new DotNetNuke.Services.Log.EventLog.LogProperties();
                props.Deserialize("<LogProperties><LogProperty><PropertyName>Install Package:</PropertyName><PropertyValue>CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - Script</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Begin Sql execution</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Providers\\DataProviders\\SqlDataProvider\\00.00.01.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Providers\\\\DataProviders\\SqlDataProvider\\00.00.01.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Executing 00.00.01.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Start Sql execution: 00.00.01.SqlDataProvider file</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>End Sql execution: 00.00.01.SqlDataProvider file</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Providers\\DataProviders\\SqlDataProvider\\Uninstall.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Providers\\DataProviders\\SqlDataProvider\\Uninstall.SqlDataProvider</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Finished Sql execution</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - Script</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - ResourceFile</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Expanding Resource file</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Edit.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Edit.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - License.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - License.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - module.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - module.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - ReleaseNotes.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - ReleaseNotes.txt</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Settings.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Settings.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - View.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - View.ascx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - App_LocalResources\\Edit.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - App_LocalResources/Edit.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - App_LocalResources\\Settings.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - App_LocalResources/Settings.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - App_LocalResources\\View.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - App_LocalResources/View.ascx.resx</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Documentation\\Documentation.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Documentation/Documentation.css</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - Documentation\\Documentation.html</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - Documentation/Documentation.html</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Resource Files created</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - ResourceFile</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - Module</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Module registered successfully - CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - Module</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Starting Installation - Assembly</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Assembly registered - bin\\CCFileExplorer.dll</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Creating backup of previous version - bin\\CCFileExplorer.dll</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Created - bin\\CCFileExplorer.dll</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Component installed successfully - Assembly</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Installation committed</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Installation successful. - CCFileExplorer</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Deleted temporary install folder</PropertyValue></LogProperty><LogProperty><PropertyName>Info:</PropertyName><PropertyValue>Installation successful.</PropertyValue></LogProperty></LogProperties>");

                var dnnLog = new DotNetNuke.Services.Log.EventLog.LogInfo() {
                    LogGUID = Guid.NewGuid().ToString()
                   ,LogTypeKey = "HOST_ALERT"
                   ,LogConfigID = "95"
                   ,LogUserID = 0
                   ,LogUserName ="******"
                   ,LogPortalID = 0
                   ,LogPortalName = null
                   ,LogCreateDate = DateTime.UtcNow
                   ,LogServerName = "Cass"
                   ,LogProperties = props
                };
                var dnnLogs = new List<DotNetNuke.Services.Log.EventLog.LogInfo>(){dnnLog};

                // Convert to EventLogs
                var logs = dnnLogs.Where(log => log.LogCreateDate >= SinceDate).Select(x => new EventLog(x)).ToList();
                // Broadcast
                LogHubController.Instance.BroadcastLogs(logs);

                SinceDate = DateTime.UtcNow;
            }

            //Call the RegisterNotification method again
            RegisterDependency();
        }