Esempio n. 1
0
        public override void Submit_OnClick(object sender, EventArgs e)
        {
            if (!Page.IsPostBack || !Page.IsValid)
            {
                return;
            }

            var title = TbTitle.Text;
            var url   = PathUtility.AddVirtualToPath(TbUrl.Text);

            if (_specialInfo != null)
            {
                var oldDirectoryPath = string.Empty;
                var newDirectoryPath = string.Empty;

                if (_specialInfo.Title != title && DataProvider.SpecialDao.IsTitleExists(SiteId, title))
                {
                    FailMessage("专题修改失败,专题名称已存在!");
                    return;
                }
                if (_specialInfo.Url != url)
                {
                    if (DataProvider.SpecialDao.IsUrlExists(SiteId, url))
                    {
                        FailMessage("专题修改失败,专题访问地址已存在!");
                        return;
                    }

                    oldDirectoryPath = SpecialManager.GetSpecialDirectoryPath(SiteInfo, _specialInfo.Url);
                    newDirectoryPath = SpecialManager.GetSpecialDirectoryPath(SiteInfo, url);
                }

                _specialInfo.Title = title;
                _specialInfo.Url   = url;
                DataProvider.SpecialDao.Update(_specialInfo);

                if (oldDirectoryPath != newDirectoryPath)
                {
                    DirectoryUtils.MoveDirectory(oldDirectoryPath, newDirectoryPath, true);
                }
            }
            else
            {
                if (HifUpload.PostedFile == null || "" == HifUpload.PostedFile.FileName)
                {
                    FailMessage("专题添加失败,请选择ZIP文件上传!");
                    return;
                }

                var filePath = HifUpload.PostedFile.FileName;
                if (!StringUtils.EqualsIgnoreCase(Path.GetExtension(filePath), ".zip"))
                {
                    FailMessage("专题添加失败,必须上传ZIP文件!");
                    return;
                }

                if (DataProvider.SpecialDao.IsTitleExists(SiteId, title))
                {
                    FailMessage("专题添加失败,专题名称已存在!");
                    return;
                }
                if (DataProvider.SpecialDao.IsUrlExists(SiteId, url))
                {
                    FailMessage("专题添加失败,专题访问地址已存在!");
                    return;
                }

                var directoryPath = SpecialManager.GetSpecialDirectoryPath(SiteInfo, url);
                DirectoryUtils.CreateDirectoryIfNotExists(directoryPath);

                var zipFilePath = SpecialManager.GetSpecialZipFilePath(directoryPath);

                HifUpload.PostedFile.SaveAs(zipFilePath);
                var srcDirectoryPath = SpecialManager.GetSpecialSrcDirectoryPath(directoryPath);
                ZipUtils.ExtractZip(zipFilePath, srcDirectoryPath);

                DirectoryUtils.Copy(srcDirectoryPath, directoryPath, true);
                //var htmlFiles = Directory.GetFiles(srcDirectoryPath, "*.html", SearchOption.AllDirectories);
                //foreach (var htmlFile in htmlFiles)
                //{
                //    CreateManager.CreateFile();
                //}

                var specialInfo = new SpecialInfo
                {
                    Title   = title,
                    Url     = url,
                    SiteId  = SiteId,
                    AddDate = DateTime.Now
                };

                DataProvider.SpecialDao.Insert(specialInfo);
            }

            LayerUtils.Close(Page);
        }
Esempio n. 2
0
        public static string GetIncludeContent(SiteInfo siteInfo, string file, ECharset charset)
        {
            var filePath = PathUtility.MapPath(siteInfo, PathUtility.AddVirtualToPath(file));

            return(GetContentByFilePath(filePath, charset));
        }