コード例 #1
0
ファイル: TagService.cs プロジェクト: wangscript/tcgcms
        public int CreateClassList(string categorieid, int page,ref int pagecount,ref string pagepath)
        {
            if (string.IsNullOrEmpty(categorieid))
            {
                return -1000000801;
            }

            Categories cif = tcgTagHandlers.handlerService.skinService.categoriesHandlers.GetCategoriesById(categorieid);

            if (cif == null)
            {
                return -1000000802;
            }

            if (cif.ResourceListTemplate == null)
            {
                return -1000000803;
            }

            if (cif.vcUrl.IndexOf(".") > -1)
            {
                pagepath = cif.vcUrl;
                return 1;
            }

            string url = cif.vcUrl;
            if (!string.IsNullOrEmpty(url))
            {
                url = (cif.vcUrl.IndexOf(".") > -1) ? cif.vcUrl : cif.vcUrl + ConfigServiceEx.baseConfig["FileExtension"];
            }
            else
            {
                if (cif.IsSinglePage == "Y" )
                {
                    Resources res = tcgTagHandlers.handlerService.resourcsService.resourcesHandlers.GetNewsResourcesAtCategorie(cif.Id);
                    if (res == null) return -1000000810;
                    return this.CreateResourcHtmlById(ref pagepath, objectHandlers.ToInt(res.Id));
                }

                return -1000000809;
            }

            string filepath = "";
            filepath = HttpContext.Current.Server.MapPath("~" + url);

            tcgTagHandlers = new TCGTagHandlers(base.handlerService);
            tcgTagHandlers.Template = cif.ResourceListTemplate.Content.Replace("_$ClassId$_", categorieid.ToString());
            tcgTagHandlers.FilePath = filepath;
            tcgTagHandlers.WebPath = url;
            tcgTagHandlers.PagerInfo.DoAllPage = false;
            tcgTagHandlers.PagerInfo.Page = page;
            tcgTagHandlers.PagerInfo.PageSep = page <= 0 ? 0 : 1;
            tcgTagHandlers.SkinInfo = cif.SkinInfo;

            if (tcgTagHandlers.Replace())
            {
                pagecount = tcgTagHandlers.PagerInfo.PageCount;
                pagepath = tcgTagHandlers.GetFilePath();
                return 1;
            }
            else
            {
                return -1000000805;
            }
        }