/// <summary> /// 生成内容页 /// </summary> /// <param name="news"></param> /// <param name="cls"></param> public static void CreateContentPage(News news, Class cls) { TemplateHelper h = new TemplateHelper(); string FileName = BasePage.GetNewsUrl(news, cls); Voodoo.IO.File.Write(System.Web.HttpContext.Current.Server.MapPath("~" + FileName), h.CreateContentPage(news, cls)); ping(BasePage.SystemSetting.SiteUrl.TrimEnd('/') + FileName); CreatePagesByCrateWith(3); }
/// <summary> /// 轮播Flash /// </summary> /// <param name="ClassID"></param> /// <param name="count"></param> /// <param name="width"></param> /// <param name="height"></param> /// <param name="showTitle"></param> /// <param name="titleLength"></param> /// <param name="interval"></param> /// <param name="ExtSql"></param> /// <param name="Order"></param> /// <returns></returns> public static string cmsflashpic(string ClassID, string count, string width, string height, string showTitle, string titleLength, string interval, string ExtSql, string Order) { StringBuilder sb = new StringBuilder(); sb.AppendLine("<!--开始FLASH-->"); sb.AppendLine("<div class=\"flash\">"); sb.AppendLine("<script type=\"text/javascript\">"); sb.AppendLine("<!--"); sb.AppendLine(string.Format("var interval_time={0};", interval)); sb.AppendLine(string.Format("var focus_width={0};", width)); sb.AppendLine(string.Format("var focus_height={0};", height)); if (showTitle.ToInt32() > 0) { sb.AppendLine("var text_height=20;"); } else { sb.AppendLine("var text_height=0;"); } sb.AppendLine("var text_align=\"center\";"); sb.AppendLine("var swf_height = focus_height+text_height;"); sb.AppendLine("var swfpath=\"/e/data/images/pixviewer.swf\";"); sb.AppendLine("var swfpatha=\"/e/data/images/pixviewer.swf\";"); StringBuilder sb_pics = new StringBuilder(); StringBuilder sb_links = new StringBuilder(); StringBuilder sb_texts = new StringBuilder(); #region 图片变量 sb_pics.Append("var pics=\""); sb_links.Append("var links=\""); sb_texts.Append("var texts=\""); string str_sql = string.Format("(ZtID='{0}' or ClassID='{1}') and len(TitleImage)>0", ClassID, ClassID); if (ExtSql.Length > 0) { str_sql += " and " + ExtSql; } if (Order.Length > 0) { str_sql += " order by " + Order; } List <News> newses = NewsView.GetModelList(str_sql, count.ToInt32()); newses = newses.Where(p => p.TitleImage.IndexOf(".gif") < 0).ToList();//不支持GIF文件 foreach (News n in newses) { sb_pics.Append(n.TitleImage + "|"); sb_links.Append(BasePage.GetNewsUrl(n, ClassView.GetModelByID(ClassID)) + "|"); sb_texts.Append(n.Title.CutString(titleLength.ToInt32()) + "|"); } sb_pics = sb_pics.TrimEnd('|'); sb_links = sb_links.TrimEnd('|'); sb_texts = sb_texts.TrimEnd('|'); sb_pics.Append("\";\n"); sb_links.Append("\";\n"); sb_texts.Append("\";\n"); sb.Append(sb_pics.ToString()); sb.Append(sb_links.ToString()); sb.Append(sb_texts.ToString()); #endregion #region 输出Flash sb.AppendLine("document.write('<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"'+ focus_width +'\" height=\"'+ swf_height +'\">'); "); sb.AppendLine("document.write('<param name=\"movie\" value=\"'+swfpath+'\"><param name=\"quality\" value=\"high\"><param name=\"bgcolor\" value=\"#ffffff\">'); "); sb.AppendLine("document.write('<param name=\"menu\" value=\"false\"><param name=wmode value=\"opaque\">'); "); sb.AppendLine("document.write('<param name=\"FlashVars\" value=\"pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'&text_align='+text_align+'&interval_time='+interval_time+'\">'); "); sb.AppendLine("document.write('<embed src=\"'+swfpath+'\" wmode=\"opaque\" FlashVars=\"pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'&text_align='+text_align+'&interval_time='+interval_time+'\" menu=\"false\" bgcolor=\"#ffffff\" quality=\"high\" width=\"'+ focus_width +'\" height=\"'+ swf_height +'\" allowScriptAccess=\"sameDomain\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" />');"); sb.AppendLine("document.write('</object>');"); #endregion sb.AppendLine("//-->"); sb.AppendLine("</script>"); sb.AppendLine("</div>"); return(sb.ToString()); }
/// <summary> /// 新闻列表 /// </summary> /// <param name="ClassID">栏目ID</param> /// <param name="TitlePreChar">标题前字符</param> /// <param name="count">索取条数</param> /// <param name="TitleLength">标题保留长度</param> /// <param name="ExtSql">额外的Sql条件</param> /// <param name="Order">排序语句</param> /// <returns></returns> public string cmsnewslist(string ClassID, string TitlePreChar, string count, string TitleLength, string showTime, string ExtSql, string Order) { Class cls = NewsAction.NewsClass.Where(p => p.ID.ToString() == ClassID).First(); if (cls.ModelID == 1) { string str_sql = string.Format("classID in ({0})", GetAllSubClass(ClassID.ToInt32())); if (ExtSql.Length > 1) { str_sql += " and " + ExtSql; } str_sql += Order; List <News> nlist = NewsView.GetModelList(str_sql, count.ToInt32()); StringBuilder sb = new StringBuilder(); foreach (News n in nlist) { string title = n.Title; if (TitleLength.ToInt32() > 0) { title = title.CutString(TitleLength.ToInt32()); } string timespan = ""; if (showTime.ToInt32() > 0) { timespan = string.Format("<span class=\"news_time_span\">{0}</span>", n.NewsTime.ToString("yyyy/MM/dd")); } sb.AppendLine(string.Format("<li>{0}{1}<a href='{2}' title='{3}'>{4}</a></li>", TitlePreChar, timespan, BasePage.GetNewsUrl(n, NewsView.GetNewsClass(n)), n.Title, title)); } return(sb.ToS()); }//Model=1 新闻 else if (cls.ModelID == 2) { return("图"); } else if (cls.ModelID == 3)//问答 { string str_sql = string.Format("classID in ({0})", GetAllSubClass(ClassID.ToInt32())); if (ExtSql.Length > 1) { str_sql += " and " + ExtSql; } str_sql += Order; List <Question> qlist = QuestionView.GetModelList(str_sql, count.ToInt32()); StringBuilder sb = new StringBuilder(); foreach (Question q in qlist) { string title = q.Title; if (TitleLength.ToInt32() > 0) { title = title.CutString(TitleLength.ToInt32()); } string timespan = ""; if (showTime.ToInt32() > 0) { timespan = string.Format("<span class=\"news_time_span\">{0}</span>", q.AskTime.ToString("yyyy/MM/dd")); } sb.AppendLine(string.Format("<li>{0}{1}<a href='{2}' title='{3}'>{4}</a></li>", TitlePreChar, timespan, BasePage.GetQuestionUrl(q, q.GetClass()), q.Title, title)); } return(sb.ToS()); } else { return("未知模型"); } }
/// <summary> /// 通过关键词读取新闻 /// </summary> /// <param name="count"></param> /// <param name="TitleLength"></param> /// <param name="showTime"></param> /// <param name="key"></param> /// <param name="Order"></param> /// <returns></returns> public string getnewsbykeywords(string count, string TitleLength, string showTime, string key, string Order) { string str_sql = ""; str_sql += "("; string[] keys = Regex.Replace(key, "\\s+", ",").Split(','); foreach (string k in keys) { str_sql += " keywords like '%" + k + "%' or "; } str_sql += " 1=2)"; List <News> nlist = NewsView.GetModelList(str_sql + " " + Order, count.ToInt32()); StringBuilder sb = new StringBuilder(); foreach (News n in nlist) { string title = n.Title; if (TitleLength.ToInt32() > 0) { title = title.CutString(TitleLength.ToInt32()); } string timespan = ""; if (showTime.ToInt32() > 0) { timespan = string.Format("<span class=\"news_time_span\">{0}</span>", n.NewsTime.ToString("yyyy/MM/dd")); } sb.AppendLine(string.Format("<li>{0}{1}<a href='{2}' title='{3}'>{4}</a></li>", "", timespan, BasePage.GetNewsUrl(n, NewsView.GetNewsClass(n)), n.Title, title)); } return(sb.ToS()); }