private static void UpgradeToVersion501() { //add new Cache Error Event Type var logController = new LogController(); string configFile = string.Format("{0}Logs\\LogConfig\\CacheErrorTemplate.xml.resources", Globals.HostMapPath); logController.AddLogType(configFile, Null.NullString); }
private static void UpgradeToVersion710() { //create a placeholder entry - uses the most common 5 character password (seed list is 6 characters and above) const string listName = "BannedPasswords"; var listController = new ListController(); var entry = new ListEntryInfo(); { entry.DefinitionID = Null.NullInteger; entry.PortalID = Null.NullInteger; entry.ListName = listName; entry.Value = "12345"; entry.Text = "Placeholder"; entry.SystemList = false; } //add list to each portal and update primary alias var portalController = new PortalController(); foreach (PortalInfo portal in portalController.GetPortals()) { entry.PortalID = portal.PortalID; entry.SystemList = false; entry.ListName = listName + "-" + portal.PortalID; listController.AddListEntry(entry); var defaultAlias = PortalController.GetPortalSetting("DefaultPortalAlias", portal.PortalID, String.Empty); if (!String.IsNullOrEmpty(defaultAlias)) { foreach (var alias in TestablePortalAliasController.Instance.GetPortalAliasesByPortalId(portal.PortalID).Where(alias => alias.HTTPAlias == defaultAlias)) { alias.IsPrimary = true; TestablePortalAliasController.Instance.UpdatePortalAlias(alias); } } } int advancedFeaturesTabID = TabController.GetTabByTabPath(Null.NullInteger, "//Host//ProfessionalFeatures", Null.NullString); //Add Pages under Advanced Features Tab AddProfessionalPreviewPage(advancedFeaturesTabID, "//Host//ProfessionalFeatures//AdvancedUrlManagement", "ProfessionalPreview", "Advanced URL Management", "Manage web servers in a web farm.", "~/Icons/Sigma/AdvancedUrlMngmt_16x16.png", "~/Icons/Sigma/AdvancedUrlMngmt_32x32.png"); // Add File Content Type var typeController = new ContentTypeController(); var contentTypeFile = (from t in typeController.GetContentTypes() where t.ContentType == "File" select t).SingleOrDefault(); if (contentTypeFile == null) { typeController.AddContentType(new ContentType { ContentType = "File" }); } var fileContentType = (from t in typeController.GetContentTypes() where t.ContentType == "File" select t).SingleOrDefault(); //only perform following for an existing installation upgrading if (Globals.Status == Globals.UpgradeStatus.Upgrade) { UpdateFoldersForParentId(); ImportDocumentLibraryCategories(); ImportDocumentLibraryCategoryAssoc(fileContentType); } //Add 404 Log var logController = new LogController(); var logTypeInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.PAGE_NOT_FOUND_404.ToString(), LogTypeFriendlyName = "HTTP Error Code 404 Page Not Found", LogTypeDescription = "", LogTypeCSSClass = "OperationFailure", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeInfo); //Add LogType var logTypeConf = new LogTypeConfigInfo { LoggingIsActive = true, LogTypeKey = EventLogController.EventLogType.PAGE_NOT_FOUND_404.ToString(), KeepMostRecent = "100", NotificationThreshold = 1, NotificationThresholdTime = 1, NotificationThresholdTimeType = LogTypeConfigInfo.NotificationThresholdTimeTypes.Seconds, MailFromAddress = Null.NullString, MailToAddress = Null.NullString, LogTypePortalID = "*" }; logController.AddLogTypeConfigInfo(logTypeConf); UninstallPackage("DotNetNuke.SearchInput"); //enable password strength meter for new installs only HostController.Instance.Update("EnableStrengthMeter", Globals.Status == Globals.UpgradeStatus.Install ? "Y" : "N"); //Add IP filter log type var logTypeFilterInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.IP_LOGIN_BANNED.ToString(), LogTypeFriendlyName = "HTTP Error Code 403.6 forbidden ip address rejected", LogTypeDescription = "", LogTypeCSSClass = "OperationFailure", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeFilterInfo); //Add LogType var logTypeFilterConf = new LogTypeConfigInfo { LoggingIsActive = true, LogTypeKey = EventLogController.EventLogType.IP_LOGIN_BANNED.ToString(), KeepMostRecent = "100", NotificationThreshold = 1, NotificationThresholdTime = 1, NotificationThresholdTimeType = LogTypeConfigInfo.NotificationThresholdTimeTypes.Seconds, MailFromAddress = Null.NullString, MailToAddress = Null.NullString, LogTypePortalID = "*" }; logController.AddLogTypeConfigInfo(logTypeFilterConf); var tabController = new TabController(); int tabID = TabController.GetTabByTabPath(Null.NullInteger, "//Host//SearchAdmin", Null.NullString); if (tabID > Null.NullInteger) tabController.DeleteTab(tabID, Null.NullInteger); var modDef = ModuleDefinitionController.GetModuleDefinitionByFriendlyName("Search Admin"); if (modDef != null) AddAdminPages("Search Admin", "Manage search settings associated with DotNetNuke's search capability.", "~/Icons/Sigma/Search_16x16_Standard.png", "~/Icons/Sigma/Search_32x32_Standard.png", true, modDef.ModuleDefID, "Search Admin", ""); CopyGettingStartedStyles(); }
private static void UpgradeToVersion323() { //add new SecurityException var logController = new LogController(); string configFile = Globals.HostMapPath + "Logs\\LogConfig\\SecurityExceptionTemplate.xml.resources"; logController.AddLogType(configFile, Null.NullString); }
private static void UpgradeToVersion711() { DesktopModuleController.DeleteDesktopModule("FileManager"); //Add TabUrl Logtypes var logController = new LogController(); var logTypeInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.TABURL_CREATED.ToString(), LogTypeFriendlyName = "TabURL created", LogTypeDescription = "", LogTypeCSSClass = "OperationSuccess", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeInfo); logTypeInfo.LogTypeKey = EventLogController.EventLogType.TABURL_UPDATED.ToString(); logTypeInfo.LogTypeFriendlyName = "TabURL updated"; logController.AddLogType(logTypeInfo); logTypeInfo.LogTypeKey = EventLogController.EventLogType.TABURL_DELETED.ToString(); logTypeInfo.LogTypeFriendlyName = "TabURL deleted"; logController.AddLogType(logTypeInfo); }
/// <summary> /// this ensures that all portals have any logtypes (and sometimes configuration) required /// </summary> public static void EnsureRequiredEventLogTypesExist() { var logController = new LogController(); if (!DoesLogTypeExists(EventLogController.EventLogType.PAGE_NOT_FOUND_404.ToString())) { //Add 404 Log var logTypeInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.PAGE_NOT_FOUND_404.ToString(), LogTypeFriendlyName = "HTTP Error Code 404 Page Not Found", LogTypeDescription = "", LogTypeCSSClass = "OperationFailure", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeInfo); //Add LogType var logTypeConf = new LogTypeConfigInfo { LoggingIsActive = true, LogTypeKey = EventLogController.EventLogType.PAGE_NOT_FOUND_404.ToString(), KeepMostRecent = "100", NotificationThreshold = 1, NotificationThresholdTime = 1, NotificationThresholdTimeType = LogTypeConfigInfo.NotificationThresholdTimeTypes.Seconds, MailFromAddress = Null.NullString, MailToAddress = Null.NullString, LogTypePortalID = "*" }; logController.AddLogTypeConfigInfo(logTypeConf); } if (!DoesLogTypeExists(EventLogController.EventLogType.IP_LOGIN_BANNED.ToString())) { //Add IP filter log type var logTypeFilterInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.IP_LOGIN_BANNED.ToString(), LogTypeFriendlyName = "HTTP Error Code Forbidden IP address rejected", LogTypeDescription = "", LogTypeCSSClass = "OperationFailure", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeFilterInfo); //Add LogType var logTypeFilterConf = new LogTypeConfigInfo { LoggingIsActive = true, LogTypeKey = EventLogController.EventLogType.IP_LOGIN_BANNED.ToString(), KeepMostRecent = "100", NotificationThreshold = 1, NotificationThresholdTime = 1, NotificationThresholdTimeType = LogTypeConfigInfo.NotificationThresholdTimeTypes.Seconds, MailFromAddress = Null.NullString, MailToAddress = Null.NullString, LogTypePortalID = "*" }; logController.AddLogTypeConfigInfo(logTypeFilterConf); } if (!DoesLogTypeExists(EventLogController.EventLogType.TABURL_CREATED.ToString())) { var logTypeInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.TABURL_CREATED.ToString(), LogTypeFriendlyName = "TabURL created", LogTypeDescription = "", LogTypeCSSClass = "OperationSuccess", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeInfo); logTypeInfo.LogTypeKey = EventLogController.EventLogType.TABURL_UPDATED.ToString(); logTypeInfo.LogTypeFriendlyName = "TabURL updated"; logController.AddLogType(logTypeInfo); logTypeInfo.LogTypeKey = EventLogController.EventLogType.TABURL_DELETED.ToString(); logTypeInfo.LogTypeFriendlyName = "TabURL deleted"; logController.AddLogType(logTypeInfo); //Add LogType var logTypeUrlConf = new LogTypeConfigInfo { LoggingIsActive = false, LogTypeKey = EventLogController.EventLogType.TABURL_CREATED.ToString(), KeepMostRecent = "100", NotificationThreshold = 1, NotificationThresholdTime = 1, NotificationThresholdTimeType = LogTypeConfigInfo.NotificationThresholdTimeTypes.Seconds, MailFromAddress = Null.NullString, MailToAddress = Null.NullString, LogTypePortalID = "*" }; logController.AddLogTypeConfigInfo(logTypeUrlConf); logTypeUrlConf.LogTypeKey = EventLogController.EventLogType.TABURL_UPDATED.ToString(); logController.AddLogTypeConfigInfo(logTypeUrlConf); logTypeUrlConf.LogTypeKey = EventLogController.EventLogType.TABURL_DELETED.ToString(); logController.AddLogTypeConfigInfo(logTypeUrlConf); } if (!DoesLogTypeExists(EventLogController.EventLogType.SCRIPT_COLLISION.ToString())) { //Add IP filter log type var logTypeFilterInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.SCRIPT_COLLISION.ToString(), LogTypeFriendlyName = "Javscript library registration resolved script collision", LogTypeDescription = "", LogTypeCSSClass = "OperationFailure", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeFilterInfo); //Add LogType var logTypeFilterConf = new LogTypeConfigInfo { LoggingIsActive = true, LogTypeKey = EventLogController.EventLogType.SCRIPT_COLLISION.ToString(), KeepMostRecent = "100", NotificationThreshold = 1, NotificationThresholdTime = 1, NotificationThresholdTimeType = LogTypeConfigInfo.NotificationThresholdTimeTypes.Seconds, MailFromAddress = Null.NullString, MailToAddress = Null.NullString, LogTypePortalID = "*" }; logController.AddLogTypeConfigInfo(logTypeFilterConf); } }
/// <summary> /// UpgradeApplication - This overload is used for version specific application upgrade operations. /// </summary> /// <remarks> /// This should be used for file system modifications or upgrade operations which /// should only happen once. Database references are not recommended because future /// versions of the application may result in code incompatibilties. /// </remarks> /// <param name="Version">The Version being Upgraded</param> private static string UpgradeApplication(string Version) { string strExceptions = ""; try { switch (Version) { case "02.00.00": IDataReader dr; // change portal upload directory from GUID to ID - this only executes for version 2.0.0 string strServerPath = HttpContext.Current.Request.MapPath(Globals.ApplicationPath); string strPortalsDirMapPath = Globals.ApplicationMapPath + "/Portals/"; dr = DataProvider.Instance().GetPortals(); while (dr.Read()) { // if GUID folder exists if (Directory.Exists(strPortalsDirMapPath + dr["GUID"])) { // if ID folder exists ( this may happen because the 2.x release contains a default ID=0 folder ) if (Directory.Exists(strPortalsDirMapPath + dr["PortalID"])) { // rename the ID folder try { Directory.Move(strPortalsDirMapPath + dr["PortalID"], strServerPath + "\\Portals\\" + dr["PortalID"] + "_old"); } catch (Exception ex) { // error moving the directory - security issue? strExceptions += "Could Not Move Folder " + strPortalsDirMapPath + dr["GUID"] + " To " + strPortalsDirMapPath + dr["PortalID"] + ". Error: " + ex.Message + "\r\n"; } } // move GUID folder to ID folder try { Directory.Move(strPortalsDirMapPath + dr["GUID"], strPortalsDirMapPath + dr["PortalID"]); } catch (Exception ex) { // error moving the directory - security issue? strExceptions += "Could Not Move Folder " + strPortalsDirMapPath + dr["GUID"] + " To " + strPortalsDirMapPath + dr["PortalID"] + ". Error: " + ex.Message + "\r\n"; } } } dr.Close(); // copy the default style sheet to the default portal ( if it does not already exist ) if (File.Exists(strPortalsDirMapPath + "0\\portal.css") == false) { if (File.Exists(Globals.HostMapPath + "portal.css")) { File.Copy(Globals.HostMapPath + "portal.css", strPortalsDirMapPath + "0\\portal.css"); } } break; case "02.02.00": string strProviderPath = PortalSettings.GetProviderPath(); if (strProviderPath.StartsWith("ERROR:")) { strExceptions += strProviderPath; break; } //Optionally Install the memberRoleProvider bool installMemberRole = true; if (Config.GetSetting("InstallMemberRole") != null) { installMemberRole = bool.Parse(Config.GetSetting("InstallMemberRole")); } if (installMemberRole) { HtmlUtils.WriteFeedback(HttpContext.Current.Response, 0, "Installing MemberRole Provider:<br>"); strExceptions += InstallMemberRoleProvider(strProviderPath); } PortalController objPortalController = new PortalController(); ArrayList arrPortals; arrPortals = objPortalController.GetPortals(); int intViewModulePermissionID; int intEditModulePermissionID; int intViewTabPermissionID; int intEditTabPermissionID; int intReadFolderPermissionID; int intWriteFolderPermissionID; PermissionController objPermissionController = new PermissionController(); PermissionInfo objPermission = new PermissionInfo(); objPermission.PermissionCode = "SYSTEM_MODULE_DEFINITION"; objPermission.PermissionKey = "VIEW"; objPermission.PermissionName = "View"; objPermission.ModuleDefID = Null.NullInteger; objPermissionController.AddPermission(objPermission); objPermission.PermissionKey = "EDIT"; objPermission.PermissionName = "Edit"; objPermissionController.AddPermission(objPermission); objPermission.PermissionCode = "SYSTEM_TAB"; objPermission.PermissionKey = "VIEW"; objPermission.PermissionName = "View Tab"; objPermissionController.AddPermission(objPermission); objPermission.PermissionKey = "EDIT"; objPermission.PermissionName = "Edit Tab"; objPermissionController.AddPermission(objPermission); objPermission.PermissionCode = "SYSTEM_FOLDER"; objPermission.PermissionKey = "READ"; objPermission.PermissionName = "View Folder"; intReadFolderPermissionID = objPermissionController.AddPermission(objPermission); objPermission.PermissionKey = "WRITE"; objPermission.PermissionName = "Write to Folder"; intWriteFolderPermissionID = objPermissionController.AddPermission(objPermission); FolderController objFolderController = new FolderController(); FolderPermissionController objFolderPermissionController = new FolderPermissionController(); int PortalCount; for (PortalCount = 0; PortalCount <= arrPortals.Count - 1; PortalCount++) { PortalInfo objPortal = (PortalInfo)arrPortals[PortalCount]; int FolderID = objFolderController.AddFolder(objPortal.PortalID, "", (int)FolderController.StorageLocationTypes.InsecureFileSystem, true, false); FolderPermissionInfo objFolderPermission = new FolderPermissionInfo(); objFolderPermission.FolderID = FolderID; objFolderPermission.PermissionID = intReadFolderPermissionID; objFolderPermission.AllowAccess = true; objFolderPermission.RoleID = objPortal.AdministratorRoleId; objFolderPermissionController.AddFolderPermission(objFolderPermission); objFolderPermission.PermissionID = intWriteFolderPermissionID; objFolderPermissionController.AddFolderPermission(objFolderPermission); //TODO: loop through folders recursively here //in case they created any nested folders //and assign priveledges accordingly } //Transfer Users to the Membership Provider MembershipProvider provider = MembershipProvider.Instance(); provider.TransferUsersToMembershipProvider(); ModuleController objModuleController = new ModuleController(); ArrayList arrModules = objModuleController.GetAllModules(); ModulePermissionController objModulePermissionController = new ModulePermissionController(); int ModCount; for (ModCount = 0; ModCount <= arrModules.Count - 1; ModCount++) { ModuleInfo objModule = (ModuleInfo)arrModules[ModCount]; ModulePermissionInfo objModulePermission = new ModulePermissionInfo(); objModulePermission.ModuleID = objModule.ModuleID; int k; string[] roles; if (objModule.AuthorizedViewRoles.IndexOf(";") > 0) { roles = objModule.AuthorizedViewRoles.Split(';'); for (k = 0; k <= roles.Length - 1; k++) { if (Int32.TryParse(roles[k], out intViewModulePermissionID)) { objModulePermission.PermissionID = intViewModulePermissionID; objModulePermission.AllowAccess = true; objModulePermission.RoleID = Convert.ToInt32(roles[k]); objModulePermissionController.AddModulePermission(objModulePermission); } } } if (objModule.AuthorizedEditRoles.IndexOf(";") > 0) { roles = objModule.AuthorizedEditRoles.Split(';'); for (k = 0; k <= roles.Length - 1; k++) { if (Int32.TryParse(roles[k], out intEditModulePermissionID)) { objModulePermission.PermissionID = intEditModulePermissionID; objModulePermission.AllowAccess = true; objModulePermission.RoleID = Convert.ToInt32(roles[k]); objModulePermissionController.AddModulePermission(objModulePermission); } } } } ArrayList arrTabs; TabController objTabController = new TabController(); arrTabs = objTabController.GetAllTabs(); TabPermissionController objTabPermissionController = new TabPermissionController(); for (ModCount = 0; ModCount <= arrTabs.Count - 1; ModCount++) { TabInfo objTab = (TabInfo)arrTabs[ModCount]; TabPermissionInfo objTabPermission = new TabPermissionInfo(); objTabPermission.TabID = objTab.TabID; int k; string[] roles; if (objTab.AuthorizedRoles.IndexOf(";") > 0) { roles = objTab.AuthorizedRoles.Split(';'); for (k = 0; k <= roles.Length - 1; k++) { if (Int32.TryParse(roles[k], out intViewTabPermissionID)) { objTabPermission.PermissionID = intViewTabPermissionID; objTabPermission.AllowAccess = true; objTabPermission.RoleID = Convert.ToInt32(roles[k]); objTabPermissionController.AddTabPermission(objTabPermission); } } } if (objTab.AdministratorRoles.IndexOf(";") > 0) { roles = objTab.AdministratorRoles.Split(';'); for (k = 0; k <= roles.Length - 1; k++) { if (Int32.TryParse(roles[k], out intEditTabPermissionID)) { objTabPermission.PermissionID = intEditTabPermissionID; objTabPermission.AllowAccess = true; objTabPermission.RoleID = Convert.ToInt32(roles[k]); objTabPermissionController.AddTabPermission(objTabPermission); } } } } break; case "03.00.01": objTabController = new TabController(); arrTabs = objTabController.GetAllTabs(); int TabCount; for (TabCount = 0; TabCount <= arrTabs.Count - 1; TabCount++) { TabInfo objTab = (TabInfo)arrTabs[TabCount]; if (objTab != null) { objTab.TabPath = Globals.GenerateTabPath(objTab.ParentId, objTab.TabName); DataProvider.Instance().UpdateTab(objTab.TabID, objTab.TabName, objTab.IsVisible, objTab.DisableLink, objTab.ParentId, objTab.IconFile, objTab.Title, objTab.Description, objTab.KeyWords, objTab.IsDeleted, objTab.Url, objTab.SkinSrc, objTab.ContainerSrc, objTab.TabPath, objTab.StartDate, objTab.EndDate); } } break; case "03.00.06": //Need to clear the cache to pick up new HostSettings from the SQLDataProvider script DataCache.RemoveCache("GetHostSettings"); break; case "03.00.11": //Need to convert any Profile Data to use XmlSerialization as Binary Formatting //is not supported under Medium Trust //Get all the Profiles PersonalizationController objPersonalizationController = new PersonalizationController(); dr = DataProvider.Instance().GetAllProfiles(); while (dr.Read()) { //Load Profile Data (using Binary Formatter method) PersonalizationInfo objPersonalization = new PersonalizationInfo(); try { objPersonalization.UserId = Convert.ToInt32(Null.SetNull(dr["UserID"], objPersonalization.UserId)); } catch { } try { objPersonalization.PortalId = Convert.ToInt32(Null.SetNull(dr["PortalId"], objPersonalization.PortalId)); } catch { } objPersonalization.Profile = Globals.DeserializeHashTableBase64(dr["ProfileData"].ToString()); objPersonalization.IsModified = true; //Save Profile Data (using XML Serializer) objPersonalizationController.SaveProfile(objPersonalization); } dr.Close(); break; case "03.00.12": //If we are upgrading from a 3.0.x version then we need to upgrade the MembershipProvider if (upgradeMemberShipProvider) { strProviderPath = PortalSettings.GetProviderPath(); StreamReader objStreamReader; string strScript; //Upgrade provider HtmlUtils.WriteFeedback(HttpContext.Current.Response, 0, "Executing UpgradeMembershipProvider.sql<br>"); objStreamReader = File.OpenText(strProviderPath + "UpgradeMembershipProvider.sql"); strScript = objStreamReader.ReadToEnd(); objStreamReader.Close(); strExceptions += PortalSettings.ExecuteScript(strScript); } break; case "03.01.00": LogController objLogController = new LogController(); XmlDocument xmlDoc = new XmlDocument(); string xmlConfigFile = Globals.HostMapPath + "Logs\\LogConfig\\LogConfig.xml.resources"; try { xmlDoc.Load(xmlConfigFile); } catch (FileNotFoundException) { xmlConfigFile = Globals.HostMapPath + "Logs\\LogConfig\\LogConfigTemplate.xml.resources"; xmlDoc.Load(xmlConfigFile); } XmlNodeList LogType = xmlDoc.SelectNodes("/LogConfig/LogTypes/LogType"); foreach (XmlNode LogTypeInfo in LogType) { LogTypeInfo objLogTypeInfo = new LogTypeInfo(); objLogTypeInfo.LogTypeKey = LogTypeInfo.Attributes["LogTypeKey"].Value; objLogTypeInfo.LogTypeFriendlyName = LogTypeInfo.Attributes["LogTypeFriendlyName"].Value; objLogTypeInfo.LogTypeDescription = LogTypeInfo.Attributes["LogTypeDescription"].Value; objLogTypeInfo.LogTypeCSSClass = LogTypeInfo.Attributes["LogTypeCSSClass"].Value; objLogTypeInfo.LogTypeOwner = LogTypeInfo.Attributes["LogTypeOwner"].Value; objLogController.AddLogType(objLogTypeInfo); } XmlNodeList LogTypeConfig = xmlDoc.SelectNodes("/LogConfig/LogTypeConfig"); foreach (XmlNode LogTypeConfigInfo in LogTypeConfig) { LogTypeConfigInfo objLogTypeConfig = new LogTypeConfigInfo(); objLogTypeConfig.EmailNotificationIsActive = Convert.ToBoolean((LogTypeConfigInfo.Attributes["EmailNotificationStatus"].Value == "On") ? true : false); objLogTypeConfig.KeepMostRecent = LogTypeConfigInfo.Attributes["KeepMostRecent"].Value; objLogTypeConfig.LoggingIsActive = Convert.ToBoolean((LogTypeConfigInfo.Attributes["LoggingStatus"].Value == "On") ? true : false); objLogTypeConfig.LogTypeKey = LogTypeConfigInfo.Attributes["LogTypeKey"].Value; objLogTypeConfig.LogTypePortalID = LogTypeConfigInfo.Attributes["LogTypePortalID"].Value; objLogTypeConfig.MailFromAddress = LogTypeConfigInfo.Attributes["MailFromAddress"].Value; objLogTypeConfig.MailToAddress = LogTypeConfigInfo.Attributes["MailToAddress"].Value; objLogTypeConfig.NotificationThreshold = Convert.ToInt32(LogTypeConfigInfo.Attributes["NotificationThreshold"].Value); objLogTypeConfig.NotificationThresholdTime = Convert.ToInt32(LogTypeConfigInfo.Attributes["NotificationThresholdTime"].Value); objLogTypeConfig.NotificationThresholdTimeType = (LogTypeConfigInfo.NotificationThresholdTimeTypes)Enum.Parse(typeof(LogTypeConfigInfo.NotificationThresholdTimeTypes), LogTypeConfigInfo.Attributes["NotificationThresholdTimeType"].Value); objLogController.AddLogTypeConfigInfo(objLogTypeConfig); } ScheduleItem objScheduleItem = new ScheduleItem(); objScheduleItem.TypeFullName = "DotNetNuke.Services.Cache.PurgeCache, DOTNETNUKE"; objScheduleItem.AttachToEvent = ""; objScheduleItem.CatchUpEnabled = false; if (Globals.WebFarmEnabled) { objScheduleItem.Enabled = true; } else { objScheduleItem.Enabled = false; } objScheduleItem.ObjectDependencies = ""; objScheduleItem.RetainHistoryNum = 10; objScheduleItem.Servers = ""; objScheduleItem.TimeLapse = 2; objScheduleItem.TimeLapseMeasurement = "hz"; objScheduleItem.RetryTimeLapse = 30; objScheduleItem.RetryTimeLapseMeasurement = "m"; SchedulingProvider.Instance().AddSchedule(objScheduleItem); break; case "03.02.03": //add new SecurityException LogController objSecLogController = new LogController(); XmlDocument xmlSecDoc = new XmlDocument(); string xmlSecConfigFile = Globals.HostMapPath + "Logs\\LogConfig\\SecurityExceptionTemplate.xml.resources"; try { xmlSecDoc.Load(xmlSecConfigFile); } catch (FileNotFoundException) { // xmlConfigFile = Common.Globals.HostMapPath + "Logs\LogConfig\LogConfigTemplate.xml.resources" // xmlDoc.Load(xmlConfigFile) } LogType = xmlSecDoc.SelectNodes("/LogConfig/LogTypes/LogType"); foreach (XmlNode LogTypeInfo in LogType) { LogTypeInfo objLogTypeInfo = new LogTypeInfo(); objLogTypeInfo.LogTypeKey = LogTypeInfo.Attributes["LogTypeKey"].Value; objLogTypeInfo.LogTypeFriendlyName = LogTypeInfo.Attributes["LogTypeFriendlyName"].Value; objLogTypeInfo.LogTypeDescription = LogTypeInfo.Attributes["LogTypeDescription"].Value; objLogTypeInfo.LogTypeCSSClass = LogTypeInfo.Attributes["LogTypeCSSClass"].Value; objLogTypeInfo.LogTypeOwner = LogTypeInfo.Attributes["LogTypeOwner"].Value; objSecLogController.AddLogType(objLogTypeInfo); } LogTypeConfig = xmlSecDoc.SelectNodes("/LogConfig/LogTypeConfig"); foreach (XmlNode LogTypeConfigInfo in LogTypeConfig) { LogTypeConfigInfo objLogTypeConfig = new LogTypeConfigInfo(); objLogTypeConfig.EmailNotificationIsActive = Convert.ToBoolean((LogTypeConfigInfo.Attributes["EmailNotificationStatus"].Value == "On") ? true : false); objLogTypeConfig.KeepMostRecent = LogTypeConfigInfo.Attributes["KeepMostRecent"].Value; objLogTypeConfig.LoggingIsActive = Convert.ToBoolean((LogTypeConfigInfo.Attributes["LoggingStatus"].Value == "On") ? true : false); objLogTypeConfig.LogTypeKey = LogTypeConfigInfo.Attributes["LogTypeKey"].Value; objLogTypeConfig.LogTypePortalID = LogTypeConfigInfo.Attributes["LogTypePortalID"].Value; objLogTypeConfig.MailFromAddress = LogTypeConfigInfo.Attributes["MailFromAddress"].Value; objLogTypeConfig.MailToAddress = LogTypeConfigInfo.Attributes["MailToAddress"].Value; objLogTypeConfig.NotificationThreshold = Convert.ToInt32(LogTypeConfigInfo.Attributes["NotificationThreshold"].Value); objLogTypeConfig.NotificationThresholdTime = Convert.ToInt32(LogTypeConfigInfo.Attributes["NotificationThresholdTime"].Value); objLogTypeConfig.NotificationThresholdTimeType = (LogTypeConfigInfo.NotificationThresholdTimeTypes)Enum.Parse(typeof(LogTypeConfigInfo.NotificationThresholdTimeTypes), LogTypeConfigInfo.Attributes["NotificationThresholdTimeType"].Value); objSecLogController.AddLogTypeConfigInfo(objLogTypeConfig); } break; } } catch (Exception ex) { strExceptions += "Error: " + ex.Message + "\r\n"; try { Exceptions.Exceptions.LogException(ex); } catch { // ignore } } return strExceptions; }
private static void UpgradeToVersion722() { UninstallPackage("DotNetNuke.Messaging"); //add event log type:POTENTIAL_PAYPAL_PAYMENT_FRAUD if (!DoesLogTypeExists(EventLogController.EventLogType.POTENTIAL_PAYPAL_PAYMENT_FRAUD.ToString())) { var logController = new LogController(); var logTypeInfo = new LogTypeInfo { LogTypeKey = EventLogController.EventLogType.POTENTIAL_PAYPAL_PAYMENT_FRAUD.ToString(), LogTypeFriendlyName = "Potential Paypal Payment Fraud", LogTypeDescription = "", LogTypeCSSClass = "OperationFailure", LogTypeOwner = "DotNetNuke.Logging.EventLogType" }; logController.AddLogType(logTypeInfo); } //AdvancedSettings module needs to be made a system package var pkg = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == "DotNetNuke.AdvancedSettings"); if (pkg != null) { pkg.IsSystemPackage = true; PackageController.Instance.SaveExtensionPackage(pkg); } //Site Wizard module needs to be made a system package pkg = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == "DotNetNuke.SiteWizard"); if (pkg != null) { pkg.IsSystemPackage = true; PackageController.Instance.SaveExtensionPackage(pkg); } //Site Log module needs to be made a system package pkg = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == "DotNetNuke.SiteLog"); if (pkg != null) { pkg.IsSystemPackage = true; PackageController.Instance.SaveExtensionPackage(pkg); } //Module Creator module needs to be made a system package pkg = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == "DotNetNuke.Module Creator"); if (pkg != null) { pkg.IsSystemPackage = true; PackageController.Instance.SaveExtensionPackage(pkg); } //Telerik.Web module needs to be made a system package pkg = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == "DotNetNuke.Telerik.Web"); if (pkg != null) { pkg.IsSystemPackage = true; PackageController.Instance.SaveExtensionPackage(pkg); } //jQuery needs to be made a system package pkg = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == "jQuery"); if (pkg != null) { pkg.IsSystemPackage = true; PackageController.Instance.SaveExtensionPackage(pkg); } //jQuery-Migrate needs to be made a system package pkg = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == "jQuery-Migrate"); if (pkg != null) { pkg.IsSystemPackage = true; PackageController.Instance.SaveExtensionPackage(pkg); } //Make ConfigurationManager Premium MakeModulePremium(@"ConfigurationManager"); //Make ConfigurationManager Premium MakeModulePremium(@"Dashboard"); //Make ProfessionalPreview Premium MakeModulePremium(@"ProfessionalPreview"); }