public ImportResult ImportContent() { Log.Add("import content start"); var result = new ImportResult(); var request = HttpContext.Current.Request; var allowSystemChanges = UserInfo.IsSuperUser; var appId = int.Parse(request["AppId"]); var zoneId = int.Parse(request["ZoneId"]); if (request.Files.Count <= 0) { return(result); } var file = request.Files[0]; if (file.FileName.EndsWith(".zip")) { // ZIP try { var env = new ImportExportEnvironment(Log); var zipImport = new ZipImport(env, zoneId, appId, PortalSettings.UserInfo.IsSuperUser, Log); // Increase script timeout to prevent timeouts HttpContext.Current.Server.ScriptTimeout = 300; var temporaryDirectory = HttpContext.Current.Server.MapPath(Path.Combine(Eav.ImportExport.Settings.TemporaryDirectory, Guid.NewGuid().ToString())); result.Succeeded = zipImport.ImportZip(file.InputStream, temporaryDirectory);// HttpContext.Current.Server); // , /*PortalSettings,*/ env.Messages); result.Messages = env.Messages; } catch (Exception ex) { Exceptions.LogException(ex); } } else { // XML using (var fileStreamReader = new StreamReader(file.InputStream)) { var xmlImport = new XmlImportWithFiles(Log, PortalSettings.DefaultLanguage, /*UserIdentity.CurrentUserIdentityToken,*/ allowSystemChanges); var xmlDocument = XDocument.Parse(fileStreamReader.ReadToEnd()); result.Succeeded = xmlImport.ImportXml(zoneId, appId, xmlDocument); result.Messages = xmlImport.Messages; } } return(result); }
internal static void ImportXmlSchemaOfVersion(string version, bool leaveOriginalsUntouched, ILog parentLog = null) { //var userName = "******" + version; var xmlToImport = File.ReadAllText( HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/" + version + ".xml")); var xmlImport = new XmlImportWithFiles(parentLog, "en-US", /*userName,*/ true); var success = xmlImport.ImportXml(Constants.DefaultZoneId, Constants.MetaDataAppId, XDocument.Parse(xmlToImport), leaveOriginalsUntouched); if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to " + version + " failed: " + messages); } }
internal void Version080303() { logger.LogStep("08.03.03", "Start", false); //var userName = "******"; // Change "Author" to "Owner" (permissions content type) var xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/08.03.03.xml")); var xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); var success = xmlImport.ImportXml(Constants.DefaultZoneId, Constants.MetaDataAppId, XDocument.Parse(xmlToImport), false); // Overwrite existing values if (!success) { var messages = String.Join("\r\n- ", xmlImport.ImportLog.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 08.03.03 failed: " + messages); } }
internal void Version080302() { logger.LogStep("08.03.02", "Start", false); //var userName = "******"; // Add new content types and entities var xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/08.03.02.xml")); var xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); var success = xmlImport.ImportXml(Constants.DefaultZoneId, Constants.MetaDataAppId, XDocument.Parse(xmlToImport), true); if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 08.03.02 failed: " + messages); } }
internal void Version070303() { logger.LogStep("07.03.03", "Start", false); //var userName = "******"; // 1. Import new Attributes for @All content type var xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/07.03.03-01.xml")); var xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); var success = xmlImport.ImportXml(Eav.Constants.DefaultZoneId, Eav.Constants.MetaDataAppId, XDocument.Parse(xmlToImport)); if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 07.03.03-01 failed: " + messages); } // 2. Import ContentType-InputType and entities for it xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/07.03.03-02.xml")); xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); success = xmlImport.ImportXml(Eav.Constants.DefaultZoneId, Eav.Constants.MetaDataAppId, XDocument.Parse(xmlToImport)); if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 07.03.03-02 failed: " + messages); } // 3. Hide all unneeded fields - all fields for string, number: all but "Number of Decimals", Minimum and Maximum xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/07.03.03-03.xml")); xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); success = xmlImport.ImportXml(Eav.Constants.DefaultZoneId, Eav.Constants.MetaDataAppId, XDocument.Parse(xmlToImport), false); // special note - change existing values if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 07.03.03-03 failed: " + messages); } logger.LogStep("07.03.03", "Done", false); }
internal void Version080004() { logger.LogStep("08.00.04", "Start", false); //var userName = "******"; // Fix AddressMask field in GPS settings content type var xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/08.00.04.xml")); var xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); var success = xmlImport.ImportXml(Constants.DefaultZoneId, Constants.MetaDataAppId, XDocument.Parse(xmlToImport), false); // special note - change existing values if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 08.00.04 failed: " + messages); } logger.LogStep("08.00.02", "Done", false); }
internal void Version080100() { logger.LogStep("08.01.00", "Start", false); //var userName = "******"; // Add new content types and entities var xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/08.01.00.xml")); var xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); var success = xmlImport.ImportXml(Constants.DefaultZoneId, Constants.MetaDataAppId, XDocument.Parse(xmlToImport), false); // special note - change existing values if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 08.01.00 failed: " + messages); } // Remove unneeded control key for template file editing RemoveModuleControls(new[] { "edittemplatefile" }); }
internal void Version070200() { logger.LogStep("07.02.00", "Start", false); //var userName = "******"; // Import new ContentType for permissions if (DataSource.GetCache(Eav.Constants.DefaultZoneId, Eav.Constants.MetaDataAppId).GetContentType("|Config ToSic.Eav.DataSources.Paging") == null) { var xmlToImport = File.ReadAllText(HttpContext.Current.Server.MapPath("~/DesktopModules/ToSIC_SexyContent/Upgrade/07.02.00.xml")); //var xmlToImport = File.ReadAllText("../../../../Upgrade/07.00.00.xml"); var xmlImport = new XmlImportWithFiles(null, "en-US", /*userName,*/ true); var success = xmlImport.ImportXml(Eav.Constants.DefaultZoneId, Eav.Constants.MetaDataAppId, XDocument.Parse(xmlToImport)); if (!success) { var messages = String.Join("\r\n- ", xmlImport.Messages.Select(p => p.Text).ToArray()); throw new Exception("The 2sxc module upgrade to 07.02.00 failed: " + messages); } } logger.LogStep("07.02.00", "Done", false); }
public ImportResultDto Import(int zoneId, int appId, string fileName, Stream stream, string defaultLanguage, Action <Exception> logException) { Log.Add("import content start"); var result = new ImportResultDto(); var allowSystemChanges = _user.IsSuperUser; if (fileName.EndsWith(".zip")) { // ZIP try { var zipImport = Factory.Resolve <ZipImport>(); zipImport.Init(zoneId, appId, _user.IsSuperUser, Log); var temporaryDirectory = _http.MapPath(Path.Combine(Eav.ImportExport.Settings.TemporaryDirectory, Guid.NewGuid().ToString())); result.Succeeded = zipImport.ImportZip(stream, temporaryDirectory); result.Messages = zipImport.Messages; } catch (Exception ex) { logException(ex); } } else { // XML using (var fileStreamReader = new StreamReader(stream)) { var xmlImport = new XmlImportWithFiles(Log, defaultLanguage, allowSystemChanges); var xmlDocument = XDocument.Parse(fileStreamReader.ReadToEnd()); result.Succeeded = xmlImport.ImportXml(zoneId, appId, xmlDocument); result.Messages = xmlImport.Messages; } } return(result); }