public void NextPlaceHolder(object sender, EventArgs e) { switch (CurrentWizardPlaceHolder) { case WizardPlaceHolder.ChooseSiteTemplate: if (string.IsNullOrEmpty(SiteTemplateDir.Value)) { FailMessage("必须选择一个站的模板进行操作"); return; } ltlSiteTemplateName.Text = $"{GetSiteTemplateName(SiteTemplateDir.Value)}({SiteTemplateDir.Value})"; SetActivePlaceHolder(WizardPlaceHolder.CreateSiteParameters, CreateSiteParameters); break; case WizardPlaceHolder.CreateSiteParameters: var userKeyPrefix = StringUtils.Guid(); var siteTemplatePath = PathUtility.GetSiteTemplatesPath(SiteTemplateDir.Value); Body.AddAdminLog("整站替换", $"站点:{PublishmentSystemInfo.PublishmentSystemName}"); PageUtils.Redirect(PageProgressBar.GetRecoveryUrl(PublishmentSystemId, IsDeleteChannels.SelectedValue, IsDeleteTemplates.SelectedValue, IsDeleteFiles.SelectedValue, false, siteTemplatePath, IsOverride.SelectedValue, IsOverride.SelectedValue, userKeyPrefix)); break; } }
public void BtnSubmit_Click(object sender, EventArgs e) { var siteTemplateDir = HihSiteTemplateDir.Value; var userKeyPrefix = StringUtils.Guid(); var siteTemplatePath = PathUtility.GetSiteTemplatesPath(siteTemplateDir); Body.AddAdminLog("整站替换", $"站点:{SiteInfo.SiteName}"); PageUtils.Redirect(PageProgressBar.GetRecoveryUrl(SiteId, RblIsDeleteChannels.SelectedValue, RblIsDeleteTemplates.SelectedValue, RblIsDeleteFiles.SelectedValue, false, siteTemplatePath, RblIsOverride.SelectedValue, RblIsOverride.SelectedValue, userKeyPrefix)); }
public void NextPlaceHolder(object sender, EventArgs e) { switch (CurrentWizardPlaceHolder) { case WizardPlaceHolder.ChooseSiteTemplate: if (UseSiteTemplate.Checked) { RowSiteTemplateName.Visible = RowIsImportContents.Visible = RowIsImportTableStyles.Visible = RowIsUserSiteTemplateAuxiliaryTables.Visible = true; phAuxiliaryTable.Visible = true; SiteTemplateName.Text = $"{GetSiteTemplateName(SiteTemplateDir.Value)}({SiteTemplateDir.Value})"; var siteTemplatePath = PathUtility.GetSiteTemplatesPath(SiteTemplateDir.Value); var filePath = PathUtility.GetSiteTemplateMetadataPath(siteTemplatePath, DirectoryUtils.SiteTemplates.FileConfiguration); var publishmentSystemInfo = ConfigurationIe.GetPublishmentSytemInfo(filePath); PublishmentSystemName.Text = publishmentSystemInfo.PublishmentSystemName; PublishmentSystemDir.Text = publishmentSystemInfo.PublishmentSystemDir; var extend = new PublishmentSystemInfoExtend(publishmentSystemInfo.SettingsXml); if (!string.IsNullOrEmpty(extend.Charset)) { Charset.SelectedValue = extend.Charset; } } else { RowSiteTemplateName.Visible = RowIsImportContents.Visible = RowIsImportTableStyles.Visible = RowIsUserSiteTemplateAuxiliaryTables.Visible = false; phAuxiliaryTable.Visible = true; } SetActivePlaceHolder(WizardPlaceHolder.CreateSiteParameters, CreateSiteParameters); break; case WizardPlaceHolder.CreateSiteParameters: string errorMessage; var thePublishmentSystemId = Validate_PublishmentSystemInfo(out errorMessage); if (thePublishmentSystemId > 0) { var url = PageProgressBar.GetCreatePublishmentSystemUrl(thePublishmentSystemId, UseSiteTemplate.Checked, IsImportContents.Checked, IsImportTableStyles.Checked, SiteTemplateDir.Value, bool.Parse(IsUserSiteTemplateAuxiliaryTables.SelectedValue), StringUtils.Guid(), string.Empty); PageUtils.Redirect(url); } else { ltlErrorMessage.Text = errorMessage; SetActivePlaceHolder(WizardPlaceHolder.OperatingError, OperatingError); } break; } }
public void BtnSubmit_Click(object sender, EventArgs e) { HideAll(); var theSiteId = Validate_SiteInfo(out string errorMessage); if (theSiteId > 0) { var siteTemplateDir = IsSiteTemplate ? HihSiteTemplateDir.Value : string.Empty; var onlineTemplateName = IsOnlineTemplate ? HihOnlineTemplateName.Value : string.Empty; PageUtils.Redirect(PageProgressBar.GetCreateSiteUrl(theSiteId, CbIsImportContents.Checked, CbIsImportTableStyles.Checked, siteTemplateDir, onlineTemplateName, StringUtils.Guid())); } else { FailMessage(errorMessage); ShowSubmit(); } }
public IHttpActionResult Submit() { try { var request = new AuthenticatedRequest(); if (!request.IsAdminLoggin || !request.AdminPermissionsImpl.HasSystemPermissions(ConfigManager.SettingsPermissions.SiteAdd)) { return(Unauthorized()); } var createType = request.GetPostString("createType"); var createTemplateId = request.GetPostString("createTemplateId"); var siteName = request.GetPostString("siteName"); var isRoot = request.GetPostBool("isRoot"); var parentId = request.GetPostInt("parentId"); var siteDir = request.GetPostString("siteDir"); var domainName = request.GetPostString("domainName"); var tableRule = ETableRuleUtils.GetEnumType(request.GetPostString("tableRule")); var tableChoose = request.GetPostString("tableChoose"); var tableHandWrite = request.GetPostString("tableHandWrite"); var isImportContents = request.GetPostBool("isImportContents"); var isImportTableStyles = request.GetPostBool("isImportTableStyles"); if (!isRoot) { if (DirectoryUtils.IsSystemDirectory(siteDir)) { return(BadRequest("文件夹名称不能为系统文件夹名称,请更改文件夹名称!")); } if (!DirectoryUtils.IsDirectoryNameCompliant(siteDir)) { return(BadRequest("文件夹名称不符合系统要求,请更改文件夹名称!")); } var list = DataProvider.SiteDao.GetLowerSiteDirList(parentId); if (list.IndexOf(siteDir.ToLower()) != -1) { return(BadRequest("已存在相同的发布路径,请更改文件夹名称!")); } } var channelInfo = new ChannelInfo(); channelInfo.ChannelName = channelInfo.IndexName = "首页"; channelInfo.ParentId = 0; channelInfo.ContentModelPluginId = string.Empty; var tableName = string.Empty; if (tableRule == ETableRule.Choose) { tableName = tableChoose; } else if (tableRule == ETableRule.HandWrite) { tableName = tableHandWrite; if (!DataProvider.DatabaseDao.IsTableExists(tableName)) { DataProvider.ContentDao.CreateContentTable(tableName, DataProvider.ContentDao.TableColumnsDefault); } else { DataProvider.DatabaseDao.AlterSystemTable(tableName, DataProvider.ContentDao.TableColumnsDefault); } } var siteInfo = new SiteInfo { SiteName = AttackUtils.FilterXss(siteName), SiteDir = siteDir, DomainName = domainName, TableName = tableName, ParentId = parentId, IsRoot = isRoot }; siteInfo.Additional.IsCheckContentLevel = false; siteInfo.Additional.Charset = ECharsetUtils.GetValue(ECharset.utf_8); var siteId = DataProvider.ChannelDao.InsertSiteInfo(channelInfo, siteInfo, request.AdminName); if (string.IsNullOrEmpty(tableName)) { tableName = ContentDao.GetContentTableName(siteId); DataProvider.ContentDao.CreateContentTable(tableName, DataProvider.ContentDao.TableColumnsDefault); DataProvider.SiteDao.UpdateTableName(siteId, tableName); } if (request.AdminPermissionsImpl.IsSystemAdministrator && !request.AdminPermissionsImpl.IsConsoleAdministrator) { var siteIdList = request.AdminPermissionsImpl.GetSiteIdList() ?? new List <int>(); siteIdList.Add(siteId); var adminInfo = AdminManager.GetAdminInfoByUserId(request.AdminId); DataProvider.AdministratorDao.UpdateSiteIdCollection(adminInfo, TranslateUtils.ObjectCollectionToString(siteIdList)); } var siteTemplateDir = string.Empty; var onlineTemplateName = string.Empty; if (StringUtils.EqualsIgnoreCase(createType, "local")) { siteTemplateDir = createTemplateId; } else if (StringUtils.EqualsIgnoreCase(createType, "cloud")) { onlineTemplateName = createTemplateId; } var redirectUrl = PageProgressBar.GetCreateSiteUrl(siteId, isImportContents, isImportTableStyles, siteTemplateDir, onlineTemplateName, StringUtils.Guid()); SystemManager.UpdateSites(); return(Ok(new { Value = redirectUrl })); } catch (Exception ex) { return(InternalServerError(ex)); } }