/// <summary> /// 写出主要代码 /// </summary> public string OutCode() { SiteDat SiteDat = new SiteDat(); HttpRequest request = HttpContext.Current.Request; StringBuilder sr = new StringBuilder(); if (SiteFun.Query("reset") == "yes") { HttpRuntime.UnloadAppDomain(); sr.Append(AdminUI.SuccessBox(SiteDat.GetLan("MsgRebootApplicationSucc"))); } //快捷入口 sr.Append(AdminUI.AdminBoxStart(true)); sr.Append(HtmlUI.TableStart()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Basic.png", null) + "<br/>" + SiteDat.GetLan("AdmMenuBase"), "?act=basic&mode=base"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/ArticleAdd.png", null) + "<br/>" + SiteDat.GetLan("AddArt"), "?act=post&mode=post&m=A"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Article.png", null) + "<br/>" + SiteDat.GetLan("ArtList"), "?act=post&mode=list&m=A"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/FellowAdd.png", null) + "<br/>" + SiteDat.GetLan("AddLink"), "?act=fellow&mode=post"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Fellow.png", null) + "<br/>" + SiteDat.GetLan("LinkList"), "?act=fellow&mode=list"))); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Comment.png", null) + "<br/>" + SiteDat.GetLan("CmtList"), "?act=comment&mode=list"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/DbBackup.png", null) + "<br/>" + SiteDat.GetLan("DbBackup"), "?act=db&mode=backup"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Sql.png", null) + "<br/>" + SiteDat.GetLan("ExeSql"), "?act=db&mode=sql"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Cache.png", null) + "<br/>" + SiteDat.GetLan("CacheList"), "?act=info&mode=cache"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/File.png", null) + "<br/>" + SiteDat.GetLan("AttachList"), "?act=attach&mode=list"))); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Page.png", null) + "<br/>" + SiteDat.GetLan("AdmMenuPGMgr"), "?act=post&mode=list&m=P"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Tag.png", null) + "<br/>" + SiteDat.GetLan("AdmMenuTagMgr"), "?act=tag&mode=list"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Master.png", null) + "<br/>" + SiteDat.GetLan("AdmMenuMgrControl"), "?act=user&mode=list"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Upgrade.png", null) + "<br/>" + SiteDat.GetLan("AdmMenuChkUP"), "?act=upgrade&mode=info"))); sr.Append(HtmlUI.CreateTd(HtmlUI.Link(HtmlUI.Image("Common/Admin/Icons/Business.png", null) + "<br/>" + SiteDat.GetLan("AdmMenuOffi"), null))); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TableFinal()); sr.Append(AdminUI.AdminBoxFinal()); //系统信息 sr.Append(AdminUI.AdminBoxStart(true)); sr.Append(HtmlUI.TableStart("onCenter")); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("CurrVer")) + HtmlUI.CreateTd(SiteCfg.SystemVersionFull)); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh() + HtmlUI.CreateTd(HtmlUI.Link(SiteDat.GetLan("RebootApplication"), "?reset=yes"))); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrIP")) + HtmlUI.CreateTd(request.ServerVariables["LOCAL_ADDR"])); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrName")) + HtmlUI.CreateTd(request.ServerVariables["SERVER_NAME"])); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrSoft")) + HtmlUI.CreateTd(request.ServerVariables["SERVER_SOFTWARE"])); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrPort")) + HtmlUI.CreateTd(request.ServerVariables["SERVER_PORT"])); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrApplPath")) + HtmlUI.CreateTd(SiteCfg.Router)); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrFilePath")) + HtmlUI.CreateTd(request.ServerVariables["PATH_TRANSLATED"])); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrHost")) + HtmlUI.CreateTd(request.ServerVariables["HTTP_HOST"])); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrLang")) + HtmlUI.CreateTd(request.ServerVariables["HTTP_ACCEPT_LANGUAGE"])); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrCLR")) + HtmlUI.CreateTd(".NET CLR v" + Environment.Version.Major + "." + Environment.Version.Minor + "." + Environment.Version.Build + "." + Environment.Version.Revision)); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrOS")) + HtmlUI.CreateTd(Environment.OSVersion.ToString())); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrCpuType")) + HtmlUI.CreateTd(Environment.GetEnvironmentVariable("PROCESSOR_IDENTIFIER"))); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("SvrCpuNum")) + HtmlUI.CreateTd(Environment.GetEnvironmentVariable("NUMBER_OF_PROCESSORS"))); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TrStart()); sr.Append(HtmlUI.CreateTh(SiteDat.GetLan("Memory")) + HtmlUI.CreateTd(SiteFun.FormatLength(Process.GetCurrentProcess().PeakWorkingSet64))); sr.Append(HtmlUI.TrFinal()); sr.Append(HtmlUI.TableFinal()); sr.Append(AdminUI.AdminBoxFinal()); //最新评论 //sr.Append(new AdminComment().List(20)); return sr.ToString(); }
/// <summary> /// 获取文章内容页完整XML内容 /// </summary> /// <param name="id">文章编号</param> /// <param name="local">文章标签</param> /// <param name="pwd">文章密码</param> /// <param name="page">当前页(评论用)</param> /// <param name="pageSize">分页大小(评论用)</param> /// <returns>完整XML内容</returns> public string OutWriteView(int id, string local, string pwd, int page, int pageSize) { SettingItem setting = this.OutSetting; PostData artData = new PostData(conn); SiteDat SiteDat = new SiteDat(); //取得文章列表数据 PostItem art = new PostItem(); if (id > 0) { if (SiteDat.GetDat(string.Format(SiteCache.PostFormat, id)) == null) { SiteDat.SetDat(string.Format(SiteCache.PostFormat, id), artData.GetPost(id)); } art = (PostItem)SiteDat.GetDat(string.Format(SiteCache.PostFormat, id)); } else { if (SiteDat.GetDat(string.Format(SiteCache.PostFormat, local)) == null) { SiteDat.SetDat(string.Format(SiteCache.PostFormat, local), artData.GetPost(local)); } art = (PostItem)SiteDat.GetDat(string.Format(SiteCache.PostFormat, local)); } //取得栏目数据 ColumnItem columnItem = new ColumnItem(); if (SiteDat.GetDat(string.Format(SiteCache.ColumnFormat, art.ColumnID)) == null) { SiteDat.SetDat(string.Format(SiteCache.ColumnFormat, art.ColumnID), new ColumnData(conn).GetColumn(art.ColumnID)); } columnItem = (ColumnItem)SiteDat.GetDat(string.Format(SiteCache.ColumnFormat, art.ColumnID)); artData.AddPostReader(art.ID); //设置模板引擎 //设置密码文章显示状态 bool viewPwdArt = pwd == art.Password; //本页XML处理 StringBuilder xml = new StringBuilder(); xml.Append("\t\t<article>\n"); xml.AppendFormat("\t\t\t\t<link>{0}</link>\n", SiteFun.CDATA(string.Format(SitePath.ArticleLinkFormat, SiteCfg.Path, SiteFun.UrlEncode(art.Local)))); xml.AppendFormat("\t\t\t\t<id>{0}</id>\n", art.ID); xml.AppendFormat("\t\t\t\t<title>{0}</title>\n", SiteFun.CDATA(art.Title)); xml.AppendFormat("\t\t\t\t<local>{0}</local>\n", SiteFun.CDATA(art.Local)); xml.AppendFormat("\t\t\t\t<tags>{0}</tags>\n", SiteFun.CDATA(art.Tags)); xml.Append("\t\t\t\t<category>\n"); xml.AppendFormat("\t\t\t\t\t<link>{0}</link>\n", SiteFun.CDATA(string.Format(SitePath.CategoryLinkFormat, SiteCfg.Path, SiteFun.UrlEncode(columnItem.Local)))); xml.AppendFormat("\t\t\t\t\t<id>{0}</id>\n", columnItem.ID); xml.AppendFormat("\t\t\t\t\t<local>{0}</local>\n", SiteFun.CDATA(columnItem.Local)); xml.AppendFormat("\t\t\t\t\t<name>{0}</name>\n", SiteFun.CDATA(columnItem.Name)); xml.AppendFormat("\t\t\t\t\t<intro>{0}</intro>\n", SiteFun.CDATA(columnItem.Intro)); xml.AppendFormat("\t\t\t\t\t<postCount>{0}</postCount>\n", columnItem.PostCount); xml.Append("\t\t\t\t</category>\n"); xml.AppendFormat("\t\t\t\t<explain>{0}</explain>\n", SiteFun.CDATA(CheckPasswordContent(art.Password, art.Explain, art.Local, viewPwdArt))); xml.AppendFormat("\t\t\t\t<content>{0}</content>\n", SiteFun.CDATA(CheckPasswordContent(art.Password, art.Content, art.Local, viewPwdArt))); xml.AppendFormat("\t\t\t\t<publish>{0}</publish>\n", art.Publish); xml.AppendFormat("\t\t\t\t<author>{0}</author>\n", SiteFun.CDATA(art.Author)); xml.AppendFormat("\t\t\t\t<postCount>{0}</postCount>\n", art.PostCount); xml.AppendFormat("\t\t\t\t<reader>{0}</reader>\n", art.Reader); xml.AppendFormat("\t\t\t\t<vote>{0}</vote>\n", art.Vote); xml.Append("\t\t</article>\n"); xml.Append("\t\t<comments>\n"); xml.AppendFormat("\t\t\t<html>{0}</html>\n", SiteFun.CDATA(new CommentUI(conn).GetCommentList(art.ID, page, pageSize))); xml.Append("\t\t</comments>\n"); //绑定XML并写出 string title = string.Empty; if (art.ID > 0) { title = string.Format("{0} - {1} - {2}", art.Title, columnItem.Name, setting.Basic.Name); } return new _WebBaseXml(conn).OutBaseXml(title, xml.ToString()); }