public IHttpActionResult Main() { try { var request = new AuthRequest(); var account = request.GetPostString("account"); var password = request.GetPostString("password"); if (string.IsNullOrEmpty(account) || string.IsNullOrEmpty(password)) { return(Unauthorized()); } string userName; string errorMessage; if (!DataProvider.AdministratorDao.Validate(account, password, false, out userName, out errorMessage)) { LogUtils.AddAdminLog(userName, "后台管理员登录失败"); DataProvider.AdministratorDao.UpdateLastActivityDateAndCountOfFailedLogin(userName); return(Unauthorized()); } DataProvider.AdministratorDao.UpdateLastActivityDateAndCountOfLogin(userName); request.AdminLogin(userName); return(Ok(new { UserName = userName })); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Main() { var request = new AuthRequest(); if (!request.IsAdminLoggin) { return(Unauthorized()); } var packageId = request.GetPostString("packageId"); var version = request.GetPostString("version"); var packageType = request.GetPostString("packageType"); if (StringUtils.EqualsIgnoreCase(packageId, PackageUtils.PackageIdSsCms)) { packageType = PackageType.SsCms.Value; } string errorMessage; var idWithVersion = $"{packageId}.{version}"; if (!PackageUtils.UpdatePackage(idWithVersion, PackageType.Parse(packageType), out errorMessage)) { return(BadRequest(errorMessage)); } return(Ok()); }
public IHttpActionResult Main() { var request = new AuthRequest(); if (!request.IsAdminLoggin) { return(Unauthorized()); } var packageId = request.GetPostString("packageId"); var version = request.GetPostString("version"); try { PackageUtils.DownloadPackage(packageId, version); } catch { PackageUtils.DownloadPackage(packageId, version); } if (StringUtils.EqualsIgnoreCase(packageId, PackageUtils.PackageIdSsCms)) { CacheDbUtils.RemoveAndInsert(PackageUtils.CacheKeySsCmsIsDownload, true.ToString()); } return(Ok()); }
public IHttpActionResult Main() { try { var request = new AuthRequest(); var siteId = request.GetPostInt("siteId"); var pageChannelId = request.GetPostInt("pageChannelId"); if (pageChannelId == 0) { pageChannelId = siteId; } var pageContentId = request.GetPostInt("pageContentId"); var pageTemplateId = request.GetPostInt("pageTemplateId"); var isPageRefresh = request.GetPostBool("isPageRefresh"); var templateContent = TranslateUtils.DecryptStringBySecretKey(request.GetPostString("templateContent")); var ajaxDivId = AttackUtils.FilterSqlAndXss(request.GetPostString("ajaxDivId")); var channelId = request.GetPostInt("channelId"); if (channelId == 0) { channelId = pageChannelId; } var contentId = request.GetPostInt("contentId"); if (contentId == 0) { contentId = pageContentId; } var pageUrl = TranslateUtils.DecryptStringBySecretKey(request.GetPostString("pageUrl")); var pageIndex = request.GetPostInt("pageNum"); if (pageIndex > 0) { pageIndex--; } var queryString = PageUtils.GetQueryStringFilterXss(PageUtils.UrlDecode(HttpContext.Current.Request.RawUrl)); queryString.Remove("siteId"); return(Ok(new { Html = StlDynamic.ParseDynamicContent(siteId, channelId, contentId, pageTemplateId, isPageRefresh, templateContent, pageUrl, pageIndex, ajaxDivId, queryString, request.UserInfo) })); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Main() { try { var request = new AuthRequest(); var siteId = request.GetPostInt("siteId"); var siteInfo = SiteManager.GetSiteInfo(siteId); var pageChannelId = request.GetPostInt("pageChannelId"); var templateId = request.GetPostInt("templateId"); var totalNum = request.GetPostInt("totalNum"); var pageCount = request.GetPostInt("pageCount"); var currentPageIndex = request.GetPostInt("currentPageIndex"); var stlPageContentsElement = TranslateUtils.DecryptStringBySecretKey(request.GetPostString("stlPageContentsElement")); var nodeInfo = ChannelManager.GetChannelInfo(siteId, pageChannelId); var templateInfo = TemplateManager.GetTemplateInfo(siteId, templateId); var pageInfo = new PageInfo(nodeInfo.Id, 0, siteInfo, templateInfo, new Dictionary <string, object>()) { UserInfo = request.UserInfo }; var contextInfo = new ContextInfo(pageInfo); var stlPageContents = new StlPageContents(stlPageContentsElement, pageInfo, contextInfo, false); var pageHtml = stlPageContents.Parse(totalNum, currentPageIndex, pageCount, false); return(Ok(pageHtml)); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Main() { var request = new AuthRequest(); if (!request.IsAdminLoggin) { return(Unauthorized()); } var packageId = request.GetPostString("packageId"); var version = request.GetPostString("version"); PackageUtils.DownloadPackage(packageId, version); return(Ok()); }
public IHttpActionResult Main() { try { var request = new AuthRequest(); var siteId = request.GetPostInt("siteId"); var channelId = request.GetPostInt("channelId"); var contentId = request.GetPostInt("contentId"); var templateId = request.GetPostInt("templateId"); var ajaxDivId = AttackUtils.FilterSqlAndXss(request.GetPostString("ajaxDivId")); var pageUrl = TranslateUtils.DecryptStringBySecretKey(request.GetPostString("pageUrl")); var testType = AttackUtils.FilterSqlAndXss(request.GetPostString("testType")); //var testValue = PageUtils.FilterSqlAndXss(request.GetPostString("testValue")); //var testOperate = PageUtils.FilterSqlAndXss(request.GetPostString("testOperate")); var successTemplate = TranslateUtils.DecryptStringBySecretKey(request.GetPostString("successTemplate")); var failureTemplate = TranslateUtils.DecryptStringBySecretKey(request.GetPostString("failureTemplate")); var isSuccess = false; if (StringUtils.EqualsIgnoreCase(testType, StlIf.TypeIsUserLoggin)) { isSuccess = request.IsUserLoggin; } else if (StringUtils.EqualsIgnoreCase(testType, StlIf.TypeIsAdministratorLoggin)) { isSuccess = request.IsAdminLoggin; } else if (StringUtils.EqualsIgnoreCase(testType, StlIf.TypeIsUserOrAdministratorLoggin)) { isSuccess = request.IsUserLoggin || request.IsAdminLoggin; } return(Ok(new { Html = StlDynamic.ParseDynamicContent(siteId, channelId, contentId, templateId, false, isSuccess ? successTemplate : failureTemplate, pageUrl, 0, ajaxDivId, null, request.UserInfo) })); } catch (Exception ex) { return(InternalServerError(ex)); } }
public IHttpActionResult Main() { var request = new AuthRequest(); var isDownload = TranslateUtils.ToBool(CacheDbUtils.GetValueAndRemove(PackageUtils.CacheKeySsCmsIsDownload)); if (!isDownload) { return(Unauthorized()); } var version = request.GetPostString("version"); var idWithVersion = $"{PackageUtils.PackageIdSsCms}.{version}"; var packagePath = PathUtils.GetPackagesPath(idWithVersion); var packageWebConfigPath = PathUtils.Combine(packagePath, WebConfigUtils.WebConfigFileName); if (!FileUtils.IsFileExists(packageWebConfigPath)) { return(BadRequest($"升级包 {WebConfigUtils.WebConfigFileName} 文件不存在")); } WebConfigUtils.UpdateWebConfig(packageWebConfigPath, WebConfigUtils.IsProtectData, WebConfigUtils.DatabaseType, WebConfigUtils.ConnectionString, WebConfigUtils.AdminDirectory, WebConfigUtils.SecretKey, WebConfigUtils.IsNightlyUpdate); DirectoryUtils.Copy(PathUtils.Combine(packagePath, DirectoryUtils.SiteFiles.DirectoryName), PathUtils.GetSiteFilesPath(string.Empty), true); DirectoryUtils.Copy(PathUtils.Combine(packagePath, DirectoryUtils.SiteServer.DirectoryName), PathUtils.GetAdminDirectoryPath(string.Empty), true); DirectoryUtils.Copy(PathUtils.Combine(packagePath, DirectoryUtils.Bin.DirectoryName), PathUtils.GetBinDirectoryPath(string.Empty), true); var isCopyFiles = FileUtils.CopyFile(packageWebConfigPath, PathUtils.Combine(WebConfigUtils.PhysicalApplicationPath, WebConfigUtils.WebConfigFileName), true); //SystemManager.SyncDatabase(); return(Ok(new { isCopyFiles })); }
public IHttpActionResult Main() { var request = new AuthRequest(); if (!request.IsAdminLoggin) { return(Unauthorized()); } var version = request.GetPostString("version"); var idWithVersion = $"{PackageUtils.PackageIdSsCms}.{version}"; var packagePath = PathUtils.GetPackagesPath(idWithVersion); var packageWebConfigPath = PathUtils.Combine(packagePath, WebConfigUtils.WebConfigFileName); DirectoryUtils.Copy(PathUtils.Combine(packagePath, DirectoryUtils.SiteFiles.DirectoryName), PathUtils.GetSiteFilesPath(string.Empty), true); DirectoryUtils.Copy(PathUtils.Combine(packagePath, DirectoryUtils.SiteServer.DirectoryName), PathUtils.GetAdminDirectoryPath(string.Empty), true); DirectoryUtils.Copy(PathUtils.Combine(packagePath, DirectoryUtils.Bin.DirectoryName), PathUtils.GetBinDirectoryPath(string.Empty), true); FileUtils.CopyFile(packageWebConfigPath, PathUtils.Combine(WebConfigUtils.PhysicalApplicationPath, WebConfigUtils.WebConfigFileName), true); //SystemManager.SyncDatabase(); return(Ok()); }
public IHttpActionResult Main() { try { var request = new AuthRequest(); var form = HttpContext.Current.Request.Form; var isAllSites = request.GetPostBool(StlSearch.AttributeIsAllSites.ToLower()); var siteName = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeSiteName.ToLower())); var siteDir = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeSiteDir.ToLower())); var siteIds = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeSiteIds.ToLower())); var channelIndex = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeChannelIndex.ToLower())); var channelName = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeChannelName.ToLower())); var channelIds = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeChannelIds.ToLower())); var type = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeType.ToLower())); var word = PageUtils.FilterSql(request.GetPostString(StlSearch.AttributeWord.ToLower())); var dateAttribute = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeDateAttribute.ToLower())); var dateFrom = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeDateFrom.ToLower())); var dateTo = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeDateTo.ToLower())); var since = PageUtils.FilterSqlAndXss(request.GetPostString(StlSearch.AttributeSince.ToLower())); var pageNum = request.GetPostInt(StlSearch.AttributePageNum.ToLower()); var isHighlight = request.GetPostBool(StlSearch.AttributeIsHighlight.ToLower()); var isDefaultDisplay = request.GetPostBool(StlSearch.AttributeIsDefaultDisplay.ToLower()); var siteId = request.GetPostInt("siteid"); var ajaxDivId = PageUtils.FilterSqlAndXss(request.GetPostString("ajaxdivid")); var template = TranslateUtils.DecryptStringBySecretKey(request.GetPostString("template")); var pageIndex = request.GetPostInt("page", 1) - 1; var templateInfo = new TemplateInfo(0, siteId, string.Empty, TemplateType.FileTemplate, string.Empty, string.Empty, string.Empty, ECharset.utf_8, false); var siteInfo = SiteManager.GetSiteInfo(siteId); var pageInfo = new PageInfo(siteId, 0, siteInfo, templateInfo, new Dictionary <string, object>()) { UserInfo = request.UserInfo }; var contextInfo = new ContextInfo(pageInfo); var contentBuilder = new StringBuilder(StlRequestEntities.ParseRequestEntities(form, template)); var stlLabelList = StlParserUtility.GetStlLabelList(contentBuilder.ToString()); if (StlParserUtility.IsStlElementExists(StlPageContents.ElementName, stlLabelList)) { var stlElement = StlParserUtility.GetStlElement(StlPageContents.ElementName, stlLabelList); var stlPageContentsElement = stlElement; var stlPageContentsElementReplaceString = stlElement; bool isDefaultCondition; var whereString = DataProvider.ContentDao.GetWhereStringByStlSearch(isAllSites, siteName, siteDir, siteIds, channelIndex, channelName, channelIds, type, word, dateAttribute, dateFrom, dateTo, since, siteId, ApiRouteActionsSearch.ExlcudeAttributeNames, form, out isDefaultCondition); //没搜索条件时不显示搜索结果 if (isDefaultCondition && !isDefaultDisplay) { return(NotFound()); } var stlPageContents = new StlPageContents(stlPageContentsElement, pageInfo, contextInfo, pageNum, siteInfo.TableName, whereString); int totalNum; var pageCount = stlPageContents.GetPageCount(out totalNum); if (totalNum == 0) { return(NotFound()); } for (var currentPageIndex = 0; currentPageIndex < pageCount; currentPageIndex++) { if (currentPageIndex != pageIndex) { continue; } var pageHtml = stlPageContents.Parse(totalNum, currentPageIndex, pageCount, false); var pagedBuilder = new StringBuilder(contentBuilder.ToString().Replace(stlPageContentsElementReplaceString, pageHtml)); StlParserManager.ReplacePageElementsInSearchPage(pagedBuilder, pageInfo, stlLabelList, ajaxDivId, pageInfo.PageChannelId, currentPageIndex, pageCount, totalNum); if (isHighlight && !string.IsNullOrEmpty(word)) { var pagedContents = pagedBuilder.ToString(); pagedBuilder = new StringBuilder(); pagedBuilder.Append(RegexUtils.Replace( $"({word.Replace(" ", "\\s")})(?!</a>)(?![^><]*>)", pagedContents, $"<span style='color:#cc0000'>{word}</span>")); } Parser.Parse(siteInfo, pageInfo, contextInfo, pagedBuilder, string.Empty, false); return(Ok(pagedBuilder.ToString())); } } Parser.Parse(siteInfo, pageInfo, contextInfo, contentBuilder, string.Empty, false); return(Ok(contentBuilder.ToString())); } catch (Exception ex) { return(InternalServerError(ex)); } }