Esempio n. 1
0
		private BXWizardResult Database()
		{
			Bitrix.Services.BXLoc.CurrentLocale = WizardContext.Locale;
			Bitrix.DataLayer.BXSqlManager.OriginalConnectionString = ConnectionString;

			Bitrix.Main.BXMain m = new Bitrix.Main.BXMain();
			Bitrix.Modules.BXModuleInstaller mi = m.GetInstaller();
			
			mi.InstallDB();
			UI.SetProgressBarValue("Installer.ProgressBar", "Main", 1);
			return ShowStatus(GetMessage("SubTitle.Files"), null, "systemfiles");
		}
Esempio n. 2
0
		private BXWizardResult Data()
		{
			Bitrix.Services.BXLoc.CurrentLocale = WizardContext.Locale;

			Bitrix.Main.BXMain m = new Bitrix.Main.BXMain();
			Bitrix.Modules.BXModuleInstaller mi = m.GetInstaller();

			mi.InstallData();
			mi.InstallEvents();
			UI.SetProgressBarValue("Installer.ProgressBar", "Main", 7);
			return ShowStatus(GetMessage("SubTitle.Configuration"), null, "finalize");
		}
Esempio n. 3
0
		private BXWizardResult ApplicationConfiguration()
		{
			Bitrix.Services.BXLoc.CurrentLocale = WizardContext.Locale;
			Bitrix.DataLayer.BXSqlManager.OriginalConnectionString = ConnectionString;

			XmlDocument doc = new XmlDocument();
			doc.Load(BXPath.MapPath("~/web.config"));
			XmlElement root = doc.DocumentElement;
			
			foreach (XmlNode node in root.SelectNodes("system.web/httpModules/add[@name='BXInstallerHttpModule']"))
				node.ParentNode.RemoveChild(node);

			foreach (XmlNode node in root.SelectNodes("system.webServer/modules/add[@name='BXInstallerHttpModule' or @name='BXInstallerIMCheckerHttpModule']"))
				node.ParentNode.RemoveChild(node);
			
			Bitrix.Main.BXMain m = new Bitrix.Main.BXMain();
			Bitrix.Modules.BXModuleInstaller mi = m.GetInstaller();
						
			mi.InstallAppConfiguration(doc);

			// Inject connection string
			XmlElement configuration = doc.DocumentElement;
			XmlElement connectionStrings = Ensure(configuration, "connectionStrings");
			XmlElement bxConnectionString = Ensure(connectionStrings, "add", "[@name='BXConnectionString']");
			EnsureAttribute(bxConnectionString, "name").Value = "BXConnectionString";
			EnsureAttribute(bxConnectionString, "connectionString").Value = (string)WizardContext.State["Install.ConnectionString"];

			// Inject machine key
			if (configuration.SelectSingleNode("system.web/machineKey") == null)
			{
				XmlElement machineKey = Ensure(Ensure(configuration, "system.web"), "machineKey");
				EnsureAttribute(machineKey, "validationKey").Value = GenKey(64);
				EnsureAttribute(machineKey, "decryptionKey").Value = GenKey(32);
				EnsureAttribute(machineKey, "validation").Value = "SHA1";
				EnsureAttribute(machineKey, "decryption").Value = "AES";
			}

			doc.Save(BXPath.MapPath("~/web.config"));
			UI.SetProgressBarValue("Installer.ProgressBar", "Main", 4);
			return ShowStatus(GetMessage("SubTitle.AppConfiguration"), null, "installapplication");
		}