public static void CreateListPage(Class c, int page, bool AutoCreateNext) { TemplateHelper h = new TemplateHelper(); TemplateList temp = h.GetListTemplate(c); int recordCount = c.CountItem(); int pagecount = (Convert.ToDouble(recordCount) / Convert.ToDouble(temp.ShowRecordCount)).YueShu(); string Content = h.CreateListPage(c, page); string FileName = BasePage.GetClassUrl(c, page); Voodoo.IO.File.Write(System.Web.HttpContext.Current.Server.MapPath("~" + FileName), Content); ping(BasePage.SystemSetting.SiteUrl.TrimEnd('/') + FileName); //下一页链接 if (pagecount > page && AutoCreateNext) { CreateListPage(c, page + 1); } if (page == 1) { CreatePagesByCrateWith(2); } }
/// <summary> /// 获取最新更新的书籍 Metro风格 /// </summary> /// <param name="top"></param> /// <returns></returns> public string getnoveltopmetroupdate(string top) { int i_top = top.ToInt32(); List <Book> bs = BookView.GetModelList("Enable=1 order by UpdateTime desc", i_top); StringBuilder sb = new StringBuilder(); int i = 1; foreach (Book b in bs) { Class c = BookView.GetClass(b); sb.AppendLine(string.Format("<li style=\" background-color:{0};\"><div class=\"item\"><h1><a href=\"{1}\">" + i + ".{2}</a></h1><div><div class=\"lastchapter\"><a href=\"{5}\">{6}</a></div></div></div><div class=\"item\"><h1><a href=\"{1}\">阅读书籍</a></h1><div><div class=\"lastchapter\"><a href=\"{5}\" title=\"{6}\">阅读最新章节</a></div><div class=\"class\">分类:<a href=\"{3}\">{4}</a></div><div class=\"author\">作者:{8}</div><div class=\"time\">更新时间:{9}</div></div></div></li>", BasePage.RandomBGColor(), BasePage.GetBookUrl(b, c), b.Title, BasePage.GetClassUrl(c), b.ClassName, BasePage.GetBookChapterUrl(BookChapterView.GetModelByID(b.LastChapterID.ToS()), c), b.LastChapterTitle, b.LastChapterTitle.CutString(12), b.Author, b.UpdateTime.ToString("MM-dd HH:mm") )); i++; } return(sb.ToS()); }
/// <summary> /// 获取最新更新的书籍 /// </summary> /// <param name="top"></param> /// <returns></returns> public string getnoveltopupdate(string top) { int i_top = top.ToInt32(); List <Book> bs = BookView.GetModelList("Enable=1 order by UpdateTime desc", i_top); StringBuilder sb = new StringBuilder(); //foreach (Book b in bs) for (int i = 0; i < bs.Count; i++) { Book b = bs[i]; Class c = BookView.GetClass(b); string str_style = ""; if (i % 2 == 0) { str_style = " style=\"background-color: #f5f5f5\""; } sb.AppendLine(string.Format("<tr" + str_style + "><td>[<a target=\"_blank\" href=\"{0}\" class=\"sort\">{1}</a>]</td><td><a class=\"name\" target=\"_blank\" href=\"{2}\">{3}</a> <a target=\"_blank\" href=\"{4}\" class=\"chapter\">{5}</a></td><td><a target=\"_blank\" href=\"/Search.aspx?m=4&key={6}\" class=\"author\">{6}</a></td><td style=\"color: #666666\">{7}</td></tr>", BasePage.GetClassUrl(c), b.ClassName, BasePage.GetBookUrl(b, c), b.Title, BasePage.GetBookChapterUrl(BookChapterView.GetModelByID(b.LastChapterID.ToS()), c), b.LastChapterTitle, b.Author, b.UpdateTime.ToString("MM-dd HH:mm") )); } return(sb.ToS()); }
/// <summary> /// 获取小说栏目列表 /// </summary> /// <param name="str"></param> /// <returns></returns> public string getallnovelclass(string str) { List <Class> cls = ClassView.GetModelList("ModelID=4"); StringBuilder sb = new StringBuilder(); foreach (Class c in cls) { sb.Append(string.Format("<a href=\"{0}\">{1}</a> ", BasePage.GetClassUrl(c), c.ClassName)); } return(sb.ToS()); }
/// <summary> /// 根据条件获取分类列表 /// </summary> /// <param name="m_where">条件语句</param> /// <param name="Model">字符拼接模板</param> /// <returns></returns> public static string Getclassbyfilter(string m_where, string Model) { List <Class> cls = ClassView.GetModelList(m_where); StringBuilder sb = new StringBuilder(); foreach (Class c in cls) { string str = Model.Replace("{classname}", c.ClassName); str = str.Replace("{id}", c.ID.ToS()); str = str.Replace("{url}", BasePage.GetClassUrl(c)); sb.Append(str); } return(sb.ToString()); }
/// <summary> /// 根据条件获取分类列表 /// </summary> /// <param name="m_where">条件语句</param> /// <returns></returns> public static string getclassbyfilter(string m_where) { List <Class> cls = ClassView.GetModelList(m_where); StringBuilder sb = new StringBuilder(); foreach (Class c in cls) { sb.AppendLine(string.Format("<a href=\"{0}\">{1}</a> ", BasePage.GetClassUrl(c), c.ClassName )); } return(sb.ToString()); }
/// <summary> /// 获取子栏目 /// </summary> /// <param name="TitlePreChar">前置字符串</param> /// <param name="TitleLength"></param> /// <param name="ClassID">栏目名截取长度</param> /// <returns></returns> public static string GetSubClass(string TitlePreChar, string TitleLength, string ClassID) { int cutString = TitleLength.ToInt32(50); StringBuilder sb = new StringBuilder(); List <Class> cls = ClassView.GetSubClass(ClassView.GetModelByID(ClassID)); foreach (Class c in cls) { sb.AppendLine(string.Format("<li>{0}<a href=\"{1}\">{2}</a></li>", TitlePreChar, BasePage.GetClassUrl(c), c.ClassName.CutString(cutString) )); } return(sb.ToString()); }
/// <summary> /// 获取栏目列表 /// </summary> /// <param name="TitlePreChar">前置字符串</param> /// <param name="TitleLength">栏目名截取长度</param> /// <returns></returns> public static string cmsclasslist(string TitlePreChar, string TitleLength) { int cutString = TitleLength.ToInt32(50); StringBuilder sb = new StringBuilder(); List <Class> cls = NewsAction.NewsClass.Where(p => p.IsLeafClass && p.ShowInNav).ToList(); foreach (Class c in cls) { sb.AppendLine(string.Format("<li>{0}<a href=\"{1}\">{2}</a></li>", TitlePreChar, BasePage.GetClassUrl(c), c.ClassName.CutString(cutString) )); } return(sb.ToString()); }
/// <summary> /// 获取类别列表 /// </summary> /// <param name="top">获取的条数</param> /// <param name="custitle">标题截取长度</param> /// <param name="m_where">条件语句</param> /// <param name="htmlTemp">模板</param> /// <returns></returns> public static string getclasslist(string top, string custitle, string m_where, string htmlTemp) { StringBuilder sb = new StringBuilder(); List <Class> cls = ClassView.GetModelList(m_where, top.ToInt32()); foreach (Class c in cls) { string item = htmlTemp; item = item.Replace("{url}", BasePage.GetClassUrl(c)); item = item.Replace("{alter}", c.Alter); item = item.Replace("{classdescription}", c.ClassDescription); item = item.Replace("{classfolder}", c.ClassForder); item = item.Replace("{classicon}", c.ClassICON); item = item.Replace("{classkeywords}", c.ClassKeywords); item = item.Replace("{classname}", c.ClassName); item = item.Replace("{fclassname}", c.ClassName.CutString(custitle.ToInt32(10))); item = item.Replace("{classpageextname}", c.ClassPageExtName); item = item.Replace("{id}", c.ID.ToS()); sb.Append(item); } return(sb.ToS()); }
/// <summary> /// 删除栏目 /// </summary> /// <param name="classes"></param> /// <returns></returns> public static Result DeleteClass(List <Class> classes) { DataEntities ent = new DataEntities(); Result r = new Result(); foreach (var cls in classes) { DirectoryInfo dir = new DirectoryInfo(HttpContext.Current.Server.MapPath(BasePage.GetClassUrl(cls))); if (dir.Exists) { dir.Delete(true); } ent.DeleteObject(cls); } ent.SaveChanges(); ent.Dispose(); r.Success = true; r.Text = string.Format("成功删除{0}个栏目", classes.Count); return(r); }
/// <summary> /// 创建菜单 /// </summary> /// <param name="parentID"></param> /// <returns></returns> public static string buildmenustring(string parentID) { StringBuilder sb = new StringBuilder(); var cls = NewsAction.NewsClass.Where(p => p.ShowInNav && p.ParentID.ToString() == parentID).ToList(); if (cls.Count > 0) { foreach (Class cl in cls) { sb.AppendLine("<li>"); if (cl.IsLeafClass) { sb.AppendLine(string.Format("<span><a href=\"{0}\">{1}</a></span>", BasePage.GetClassUrl(cl), cl.ClassName)); } else { sb.AppendLine(string.Format("<span><a href=\"{0}\">{1}</a></span>", BasePage.GetClassUrl(cl), cl.ClassName)); } if (NewsAction.NewsClass.Where(p => p.ParentID == cl.ID).Count() > 0) { sb.AppendLine("<ul>" + buildmenustring(cl.ID.ToString()) + "</ul>"); } sb.AppendLine("</li>"); } } return(sb.ToString()); }
/// <summary> /// 删除栏目 /// </summary> /// <param name="classes"></param> /// <returns></returns> public static Result DeleteClass(List <Class> classes) { Result r = new Result(); foreach (var cls in classes) { DirectoryInfo dir = new DirectoryInfo(HttpContext.Current.Server.MapPath(BasePage.GetClassUrl(cls))); if (dir.Exists) { dir.Delete(true); } ClassView.DelByID(cls.ID); } r.Success = true; r.Text = string.Format("成功删除{0}个栏目", classes.Count); return(r); }