Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        /// <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());
        }
Exemplo n.º 3
0
        /// <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());
        }
Exemplo n.º 4
0
        /// <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());
        }
Exemplo n.º 5
0
        /// <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());
        }
Exemplo n.º 6
0
        /// <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());
        }
Exemplo n.º 7
0
        /// <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());
        }
Exemplo n.º 8
0
        /// <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());
        }
Exemplo n.º 9
0
        /// <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());
        }
Exemplo n.º 10
0
        /// <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);
        }
Exemplo n.º 11
0
        /// <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());
        }
Exemplo n.º 12
0
        /// <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);
        }