コード例 #1
0
 //判断config文件是否存在,如果不存在重置config
 protected void ResetConfig()
 {
     SiteParam.ConfigInfo = M_SiteParamConfig;
     if (!File.Exists(PhyFilePath))
     {
         SiteParam.SaveConfig(PhyFilePath);
     }
 }
コード例 #2
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            if (IsHaveRightByOperCode("Edit"))
            {
                string siteLoginXml = Server.MapPath("/sysadmin/Configuraion/SiteInfoManage.config");
                if (isMainDomain)
                {
                    if (this.RadTrue.Checked)
                    {
                        if (this.txtManageCode.Text.Trim() == "")
                        {
                            Utils.RunJavaScript(this, "alert({msg:'站点参数设置失败,后台管理认证码必须填写!',title:'提示信息'})");
                            return;
                        }
                        if (!Utils.XmlUpdate(siteLoginXml, "SiteInfoManage/IsEnableManageCode", "", "1"))
                        {
                            Utils.RunJavaScript(this, "alert({msg:'站点参数设置失败,配置文件“" + siteLoginXml + "”位置不对或者没有修改权限!',title:'提示信息'})");
                            return;
                        }
                        Utils.XmlUpdate(siteLoginXml, "SiteInfoManage/ManageCode", "", this.txtManageCode.Text);
                    }
                    else
                    {
                        Utils.XmlUpdate(siteLoginXml, "SiteInfoManage/IsEnableManageCode", "", "0");
                    }
                    Utils.XmlUpdate(siteLoginXml, "SiteInfoManage/ManageDir", "", this.txtManageDir.Text);
                    AppCache.Remove("CacheManageDir");
                    AppCache.AddCache("CacheManageDir", this.txtManageDir.Text, 144000);
                }
                string thisDwManage = Server.HtmlEncode(txtSiteDWMange.Text.Trim());
                if (string.IsNullOrEmpty(thisDwManage))
                {
                    thisDwManage = "360hqb";
                }
                thisDwManage = thisDwManage.Replace(",", "");

                //修改DW校验码
                string siteDwManage     = Utils.XmlRead(siteLoginXml, "SiteInfoManage/SiteDWMange", "");
                string siteDwManageList = string.Empty;
                bool   isEditDwManage   = false;
                if (!string.IsNullOrEmpty(siteDwManage))
                {
                    string[] arr1 = siteDwManage.Split('|');
                    for (int i = 0; i < arr1.Length; i++)
                    {
                        string[] arr2 = arr1[i].Split(',');
                        if (SiteID == Utils.ParseInt(arr2[0], 0))
                        {
                            string tmpDwManage = arr2[0] + "," + arr2[1] + "," + thisDwManage;

                            if (string.IsNullOrEmpty(siteDwManageList))
                            {
                                siteDwManageList = tmpDwManage;
                            }
                            else
                            {
                                siteDwManageList += "|" + tmpDwManage;
                            }
                            isEditDwManage = true;
                        }
                        else
                        {
                            if (string.IsNullOrEmpty(siteDwManageList))
                            {
                                siteDwManageList = arr1[i];
                            }
                            else
                            {
                                siteDwManageList += "|" + arr1[i];
                            }
                        }
                    }
                }

                if (string.IsNullOrEmpty(siteDwManage) || isEditDwManage == false)
                {
                    string siteInfoXml = Server.MapPath("/" + SiteDir + "/config/SiteInfo.config");

                    if (!string.IsNullOrEmpty(siteDwManage))
                    {
                        siteDwManageList += "|" + SiteID + "," + Utils.XmlRead(siteInfoXml, "SiteInfoConfig/SiteName", "") + "," + thisDwManage;
                    }
                    else
                    {
                        siteDwManageList = SiteID + "," + Utils.XmlRead(siteInfoXml, "SiteInfoConfig/SiteName", "") + "," + thisDwManage;
                    }
                }
                Utils.XmlUpdate(siteLoginXml, "SiteInfoManage/SiteDWMange", "", siteDwManageList);

                string siteOldDir = hidSiteDir.Value.ToLower().Trim();
                string siteNewDir = "";
                M_SiteParamConfig.SiteRootURL = this.txtSiteRootURL.Text;
                M_SiteParamConfig.SiteDir     = siteNewDir;
                //M_SiteParamConfig.SiteTempletDir = this.txtSiteTempletDir.Text;
                M_SiteParamConfig.SiteDomain = this.txtSiteDomain.Text;
                //M_SiteParamConfig.DisUserName = this.txtDisUserName.Text;
                M_SiteParamConfig.EditControl   = this.ddlEditControl.SelectedValue;
                M_SiteParamConfig.LogType       = this.ddlLogType.SelectedValue;
                M_SiteParamConfig.CreateFileExt = Request.Form["selCreateFileExt"];
                SiteParam.ConfigInfo            = M_SiteParamConfig;
                string publishType = Request.Form["radPublishType"];
                M_SiteParamConfig.PublishType = publishType;

                if (isMainDomain)  //如果是主站,则可以修改文件生成目录(为空或者main)
                {
                    if (radMainSiteDir1.Checked)
                    {
                        siteNewDir = "main";
                    }
                    if (siteOldDir != siteNewDir)  //修改了生成目录
                    {
                        try
                        {
                            if (siteNewDir == "main")                                                          //生成在main目录中
                            {
                                if (!Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "main")))         //判断是否有main目录
                                {
                                    Directory.CreateDirectory(Server.MapPath("~/" + GetVirtualPath + "main")); //创建main目录
                                }
                                else if (Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "main/config")))
                                {
                                    Directory.Delete(Server.MapPath("~/" + GetVirtualPath + "main/config"), true);
                                }
                                Directory.Move(Server.MapPath("~/" + GetVirtualPath + "config"), Server.MapPath("~/" + GetVirtualPath + "main/config"));  //将配置文件移动到main目录

                                if (Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "main/Plus")))
                                {
                                    Directory.Delete(Server.MapPath("~/" + GetVirtualPath + "main/Plus"), true);
                                }
                                Directory.Move(Server.MapPath("~/" + GetVirtualPath + "Plus"), Server.MapPath("~/" + GetVirtualPath + "main/Plus"));

                                if (Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "main/IncludeFile")))
                                {
                                    Directory.Delete(Server.MapPath("~/" + GetVirtualPath + "main/IncludeFile"), true);
                                }
                                Directory.Move(Server.MapPath("~/" + GetVirtualPath + "IncludeFile"), Server.MapPath("~/" + GetVirtualPath + "main/IncludeFile"));

                                PhyFilePath = HttpContext.Current.Server.MapPath("~/" + GetVirtualPath + "main/config/SiteParam.config");

                                //File.Copy(Server.MapPath("~/" + GetVirtualPath + "web.config"), Server.MapPath("~/" + GetVirtualPath + "main/web.config"), true);  //拷贝web.config到main目录
                            }
                            else if (Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "main/config")))  //生成在根目录中,判断有没有有main/config/目录
                            {
                                if (Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "config")))
                                {
                                    Directory.Delete(Server.MapPath("~/" + GetVirtualPath + "config"), true);
                                }

                                Directory.Move(Server.MapPath("~/" + GetVirtualPath + "main/config"), Server.MapPath("~/" + GetVirtualPath + "config"));  //移动main中的配置文件到根目录

                                if (Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "Plus")))
                                {
                                    Directory.Delete(Server.MapPath("~/" + GetVirtualPath + "Plus"), true);
                                }
                                Directory.Move(Server.MapPath("~/" + GetVirtualPath + "main/Plus"), Server.MapPath("~/" + GetVirtualPath + "Plus"));

                                if (Directory.Exists(Server.MapPath("~/" + GetVirtualPath + "IncludeFile")))
                                {
                                    Directory.Delete(Server.MapPath("~/" + GetVirtualPath + "IncludeFile"), true);
                                }
                                Directory.Move(Server.MapPath("~/" + GetVirtualPath + "main/IncludeFile"), Server.MapPath("~/" + GetVirtualPath + "IncludeFile"));

                                PhyFilePath = HttpContext.Current.Server.MapPath("~/" + GetVirtualPath + "config/SiteParam.config");
                            }

                            //更新数据库中的Directory值
                            KingTop.BLL.SysManage.SysWebSite siteBll = new SysWebSite();
                            siteBll.SysWebSiteSet("EDITDIR", SiteID.ToString(), siteNewDir);
                            Session["SiteDir"] = siteNewDir;
                        }
                        catch
                        {
                            Utils.RunJavaScript(this, "alert({msg:'站点信息设置失败!',status: '2', title: '提示信息', time: 10000, width: 400})");
                            return;
                        }
                    }
                }
                bool b = SiteParam.SaveConfig(PhyFilePath);
                KingTop.WEB.BasePage.PublishType = publishType;

                //Utils.XmlUpdate(PhyFilePath, "SiteParamConfig/PublishType", "", publishType);
                if (!b)
                {
                    Utils.RunJavaScript(this, "alert({msg:'站点信息设置失败," + PhyFilePath.Replace("\\", "\\\\") + "文件没有修改权限!',status: '2', title: '提示信息', time: 10000, width: 400})");
                    return;
                }
                WriteLog("站点参数设置成功!", "", 2);
                Utils.RunJavaScript(this, "alert({msg:'站点参数设置成功!',title:'提示信息'})");
            }
            else
            {
                Utils.RunJavaScript(this, "alert({msg:'你没有修改站点参数设置的权限,请联系站点管理员!',title:'提示信息'})");
            }
        }