public static string SiteLanguageOption(string Code, string LanuageCode) { Site sitem = new Site(); List <Lebi_Site> sites = B_Lebi_Site.GetList("", "Sort desc", sitem.SiteCount, 1); string str = ""; foreach (Lebi_Site site in sites) { List <Lebi_Language> models = B_Lebi_Language.GetList("Site_id=" + site.id + "", ""); foreach (Lebi_Language model in models) { string sel = ""; if (Code == model.Code) { sel = "selected"; } string oname = model.Name; if (sitem.SiteCount > 1) { oname = model.Name + "[" + Content(site.Name, LanuageCode) + "]"; } str += "<option value=\"" + model.id + "\" " + sel + ">" + oname + "</option>"; } } return(str); }
/// <summary> /// 全部可用站点 /// </summary> /// <returns></returns> public List <Lebi_Site> Sites() { int sitenum = _SiteCount; List <Lebi_Site> sites = B_Lebi_Site.GetList("", "Sort desc", sitenum, 1); return(sites); }
public static string GetURL(string code, string ParaStr, string url, string langcode) { Lebi_Site site = new Lebi_Site(); if (ShopPage.IsAPP() || ShopPage.IsWechat() || ShopPage.IsWap()) { site = B_Lebi_Site.GetModel("IsMobile = 1 order by Sort asc"); if (site == null) { site = B_Lebi_Site.GetModel("IsMobile = 0 order by Sort asc"); } } else { site = B_Lebi_Site.GetModel("IsMobile = 0 order by Sort asc"); if (site == null) { site = B_Lebi_Site.GetModel("IsMobile = 1 order by Sort asc"); } } Lebi_Language lang = B_Lebi_Language.GetModel("Site_id =" + site.id + " and Code = '" + langcode + "'"); if (lang == null) { lang = new Lebi_Language(); } return(GetURL(code, ParaStr, url, lang)); }
public static string GetURL(string code, string ParaStr, string url, Lebi_Language lang) { if (lang == null) { lang = new Lebi_Language(); } Lebi_Site site = B_Lebi_Site.GetModel(lang.Site_id); if (site == null) { if (ShopPage.IsAPP() || ShopPage.IsWechat() || ShopPage.IsWap()) { site = B_Lebi_Site.GetModel("IsMobile = 1 order by Sort asc"); } else { site = B_Lebi_Site.GetModel("IsMobile = 0 order by Sort asc"); } if (site == null) { site = new Lebi_Site(); } } return(GetURL(code, ParaStr, url, site, lang)); }
/// <summary> /// 站点语言 /// </summary> /// <param name="InputName"></param> /// <param name="Code"></param> /// <returns></returns> public static string SiteLanguageCheckbox(string InputName, string Code, string languagecode, Lebi_Administrator admin = null) { string where = ""; if (admin != null) { if (admin.Site_ids != "" && Site.Instance.SiteCount > 1) { where = "id in (" + admin.Site_ids + ")"; } } List <Lebi_Site> sites = B_Lebi_Site.GetList(where, "Sort desc", Site.Instance.SiteCount, 1); string str = ""; Code = "," + Code + ","; foreach (Lebi_Site site in sites) { if (Site.Instance.SiteCount > 1) { if (!string.IsNullOrEmpty(RequestTool.GetConfigKey("SystemAdmin").Trim())) { str += "<div class=\"col-sm-12\"><div class=\"row\"><div class=\"input-group\"><label for=\"\">" + site.SubName + ":</label>"; } else { if (str == "") { str = site.SubName + ":"; } else { str += "<br/>" + site.SubName + ":"; } } } List <Lebi_Language> models = B_Lebi_Language.GetList("Site_id=" + site.id + "", ""); foreach (Lebi_Language model in models) { string sel = ""; if (Code.Contains("," + model.id + ",")) { sel = "checked"; } if (!string.IsNullOrEmpty(RequestTool.GetConfigKey("SystemAdmin").Trim())) { str += "<label class=\"custom-control custom-checkbox m-r-20\"><input type=\"checkbox\" id=\"" + InputName + "" + model.id + "\" name=\"" + InputName + "\" value=\"" + model.id + "\" class=\"custom-control-input\" shop=\"true\" " + sel + "><span class=\"custom-control-label\">" + model.Name + "</span></label>"; } else { str += "<input type=\"checkbox\" name=\"" + InputName + "\" id=\"" + InputName + "" + model.id + "\" shop=\"true\" value=\"" + model.id + "\" " + sel + "><label for=\"" + InputName + "" + model.id + "\">" + model.Name + "</label>"; } } if (!string.IsNullOrEmpty(RequestTool.GetConfigKey("SystemAdmin").Trim())) { str += "</div></div></div>"; } } return(str); }
public Site() { BaseConfig bcf = ShopCache.GetBaseConfig(); if (!Shop.LebiAPI.Service.Instanse.Check("managelicenese")) { _SiteName = "LebiShop多语言网店系统"; _title = "LebiShop多语言网店系统"; } else { Lebi_Site s = ShopCache.GetMainSite(); _SiteName = Language.Content(s.Name, "CN"); _title = Language.Content(s.Title, "CN"); } _WebPath = RequestTool.GetConfigKey("WebPath"); _SupplierPath = RequestTool.GetConfigKey("SupplierPath"); _WebPath = _WebPath.TrimEnd('/'); _adminpath = _WebPath + RequestTool.GetConfigKey("AdminPath"); _adminjspath = _WebPath + "/theme/system/systempage/admin/js"; _admincsspath = _WebPath + "/theme/system/systempage/admin/css"; _adminimagepath = _WebPath + "/theme/system/systempage/admin/images"; if (!Shop.LebiAPI.Service.Instanse.Check("lebilicense")) { _SiteName = "LebiShop多语言网店系统"; //Language.Content(bcf.Name, Language.CurrentLanguage().Code); _title = _SiteName; } if (Shop.LebiAPI.Service.Instanse.Check("domain3")) { _SiteCount = B_Lebi_Site.Counts(""); _SiteCount = _SiteCount > 30 ? 30 : 30; //_SiteCount; // _SiteCount; } else if (Shop.LebiAPI.Service.Instanse.Check("domain20")) { _SiteCount = B_Lebi_Site.Counts(""); _SiteCount = _SiteCount > 20 ? 20 : 20; //_SiteCount; // _SiteCount; } else if (Shop.LebiAPI.Service.Instanse.Check("domain10")) { _SiteCount = B_Lebi_Site.Counts(""); _SiteCount = _SiteCount > 10 ? 10 : 10; //_SiteCount; // _SiteCount; } //else if (Shop.LebiAPI.Service.Instanse.Check("domain2")) //{ // _SiteCount = B_Lebi_Site.Counts(""); // _SiteCount = _SiteCount > 2 ? 2 : _SiteCount; // _SiteCount; //} else { _SiteCount = 2; } if (_SiteCount == 0) { _SiteCount = 2; } }
/// <summary> /// 设置主站点 /// </summary> public static void SetMainSite() { Lebi_Site model = B_Lebi_Site.GetModel("1=1 order by Sort desc"); if (model == null) { model = new Lebi_Site(); } CacheTool.Permanent("MainSite", model); }
/// <summary> /// 站点名称 /// </summary> /// <param name="siteid"></param> /// <returns></returns> public string SiteName(int siteid) { Lebi_Site model = B_Lebi_Site.GetModel(siteid); if (model == null) { model = ShopCache.GetMainSite(); } return(model.SubName); }
/// <summary> /// 生成域名绑定规则 /// </summary> public static void CreateURLRewrite_shop() { HtmlEngine save = new HtmlEngine(); StringBuilder sb = new StringBuilder(); StringBuilder sb1 = new StringBuilder(); string str = HtmlEngine.ReadTxt("httpd.ini"); string str1 = HtmlEngine.ReadTxt(".htaccess"); if (str == "") { sb.AppendLine("[ISAPI_Rewrite]"); } else { sb.AppendLine(HtmlEngine.ReadTxt("httpd.ini")); } if (str1 == "") { sb1.AppendLine("RewriteEngine On"); sb1.AppendLine("RewriteCompatibility2 On"); sb1.AppendLine("RepeatLimit 200"); sb1.AppendLine("RewriteBase"); } else { sb1.AppendLine(HtmlEngine.ReadTxt(".htaccess")); } List <Lebi_Supplier> models = B_Lebi_Supplier.GetList("Domain!=''", ""); if (models.Count == 0) { return; } //RewriteCond %{HTTP_HOST} ^www.shop0769.top$ //RewriteRule ^(.*)$ http://www.shop0769.com/shop/?id=11 Lebi_Site site = B_Lebi_Site.GetModel("1=1 order by Sort desc"); if (site != null) { foreach (Lebi_Supplier model in models) { //sb1.AppendLine(@"RewriteRule //" + model.Domain + "(.*)$ /shop/?id=" + model.id + " [NC,N]"); //sb.AppendLine(@"RewriteRule //" + model.Domain + "/(.*) /$1/shop/?id=" + model.id + " [N,I]"); sb.AppendLine(@"RewriteCond Host ^" + model.Domain + "$"); sb.AppendLine(@"RewriteRule (.*) " + ShopCache.GetBaseConfig().HTTPServer + "://" + site.Domain + "/shop/?id=" + model.id + "$ [N,I]"); sb1.AppendLine(@"RewriteCond %{HTTP_HOST} ^" + model.Domain + "$"); sb1.AppendLine(@"RewriteRule ^(.*)$ " + ShopCache.GetBaseConfig().HTTPServer + "://" + site.Domain + "/shop/?id=" + model.id + " [NC,N]"); } } save.CreateFile("httpd.ini", sb.ToString(), "ascii"); save.CreateFile(".htaccess", sb1.ToString(), "ascii"); }
private int _SiteCount = 0;//用户的站点数量 public Site_Supplier() { BaseConfig bcf = ShopCache.GetBaseConfig(); if (!Shop.LebiAPI.Service.Instanse.Check("managelicenese")) { _SiteName = "LebiShop网上商店系统"; _title = "LebiShop网上商店系统"; } else { Lebi_Site s = ShopCache.GetMainSite(); _SiteName = Language.Content(s.Name, "CN"); _title = Language.Content(s.Title, "CN"); } _WebPath = RequestTool.GetConfigKey("WebPath"); _WebPath = _WebPath.TrimEnd('/'); _adminpath = RequestTool.GetConfigKey("SupplierPath"); _adminjspath = _WebPath + "/theme/system/systempage/supplier/js"; _admincsspath = _WebPath + "/theme/system/systempage/supplier/css"; _adminimagepath = _WebPath + "/theme/system/systempage/supplier/images"; _adminassetspath = _WebPath + "/system/systempage/supplier/assets"; _ThemeDomain = RequestTool.GetConfigKey("ThemeDomain"); _ThemeDomain = _ThemeDomain.TrimEnd('/'); if (!string.IsNullOrEmpty(_ThemeDomain)) { _adminjspath = _ThemeDomain + "/system/systempage/supplier/js"; _admincsspath = _ThemeDomain + "/system/systempage/supplier/css"; _adminimagepath = _ThemeDomain + "/system/systempage/supplier/images"; _adminassetspath = _ThemeDomain + "/system/systempage/supplier/assets"; } if (!Shop.LebiAPI.Service.Instanse.Check("lebilicense")) { _SiteName = Language.Content(bcf.Name, Language.CurrentLanguage().Code); _title = _SiteName; } if (!Shop.LebiAPI.Service.Instanse.Check("domain3")) { _SiteCount = 1; } else { _SiteCount = B_Lebi_Site.Counts(""); _SiteCount = _SiteCount > 3 ? 3 : _SiteCount; } }
/// <summary> /// 多站点选择 /// </summary> /// <param name="InputName"></param> /// <param name="ids"></param> /// <param name="lang"></param> /// <returns></returns> public string SiteCheckbox(string InputName, string ids, string lang) { int sitenum = _SiteCount; List <Lebi_Site> models = B_Lebi_Site.GetList("", "Sort desc", sitenum, 1); string str = ""; foreach (Lebi_Site model in models) { string sel = ""; if (("," + ids + ",").IndexOf("," + model.id + ",") > -1) { sel = "checked"; } str += "<label><input type=\"checkbox\" name=\"" + InputName + "\" id=\"" + InputName + "\" shop=\"true\" value=\"" + model.id + "\" " + sel + ">" + model.SubName + " </label>"; } return(str); }
/// <summary> /// 站点名称 /// </summary> /// <param name="siteid"></param> /// <returns></returns> public string SiteName(int siteid, int DT_id, string LanuageCode) { if (DT_id == 0) { Lebi_Site model = B_Lebi_Site.GetModel(siteid); if (model == null) { model = ShopCache.GetMainSite(); } return(model.SubName); } else { Lebi_DT model = B_Lebi_DT.GetModel(DT_id); if (model == null) { model = new Lebi_DT(); } return(Shop.Bussiness.Language.Content(model.Site_Name, LanuageCode)); } }
/// <summary> /// 站点语言 /// </summary> /// <param name="InputName"></param> /// <param name="Code"></param> /// <returns></returns> public static string SiteLanguageCheckbox(string InputName, string Code, string languagecode, Lebi_Administrator admin = null) { string where = ""; if (admin != null) { if (admin.Site_ids != "" && Site.Instance.SiteCount > 1) { where = "id in (" + admin.Site_ids + ")"; } } List <Lebi_Site> sites = B_Lebi_Site.GetList(where, "Sort desc", Site.Instance.SiteCount, 1); string str = ""; Code = "," + Code + ","; foreach (Lebi_Site site in sites) { if (Site.Instance.SiteCount > 1) { if (str == "") { str = site.SubName + ":"; } else { str += "<br/>" + site.SubName + ":"; } } List <Lebi_Language> models = B_Lebi_Language.GetList("Site_id=" + site.id + "", ""); foreach (Lebi_Language model in models) { string sel = ""; if (Code.Contains("," + model.id + ",")) { sel = "checked"; } str += "<label><input type=\"checkbox\" name=\"" + InputName + "\" id=\"" + InputName + "\" shop=\"true\" value=\"" + model.id + "\" " + sel + ">" + model.Name + "</label> "; } } return(str); }
/// <summary> /// 多站点选择 /// </summary> /// <param name="InputName"></param> /// <param name="ids"></param> /// <param name="lang"></param> /// <returns></returns> public string SiteCheckbox(string InputName, string ids, string lang) { int sitenum = _SiteCount; List <Lebi_Site> models = B_Lebi_Site.GetList("", "Sort desc", sitenum, 1); string str = ""; foreach (Lebi_Site model in models) { string sel = ""; if (("," + ids + ",").IndexOf("," + model.id + ",") > -1) { sel = "checked"; } if (!string.IsNullOrEmpty(RequestTool.GetConfigKey("SystemAdmin").Trim())) { str += "<label class=\"custom-control custom-checkbox m-r-20\"><input type=\"checkbox\" id=\"" + InputName + "" + model.id + "\" name=\"" + InputName + "\" value=\"" + model.id + "\" class=\"custom-control-input\" shop=\"true\" " + sel + "><span class=\"custom-control-label\">" + model.SubName + "</span></label>"; } else { str += "<label><input type=\"checkbox\" name=\"" + InputName + "\" id=\"" + InputName + "\" shop=\"true\" value=\"" + model.id + "\" " + sel + ">" + model.SubName + " </label>"; } } return(str); }
/// <summary> /// 载入主题 /// </summary> /// <param name="themecode"></param> /// <param name="siteid"></param> /// <param name="languagecode"></param> /// <param name="pcode"></param> /// <param name="checklogin">是否检查用户登录</param> public void LoadTheme(string themecode, int siteid, string languagecode, string pcode, bool checklogin) { CurrentSite_ = B_Lebi_Site.GetModel(siteid); if (ShopCache.GetMainSite().id == CurrentSite_.id || CurrentSite_.Domain == "") { IsMainSite = true; } CurrentLanguage_ = B_Lebi_Language.GetModel("Code='" + languagecode + "' and Site_id=" + siteid + ""); if (CurrentLanguage_ == null) { CurrentLanguage_ = new Lebi_Language(); } if (IsMainSite) { CurrentLanguage_.Path = (CurrentSite_.Path + CurrentLanguage_.Path).Replace("//", "/").TrimEnd('/'); } if (checklogin) { if (CurrentUser.id == 0 || CurrentUser.IsAnonymous == 1) { HttpContext.Current.Response.Redirect(URL("P_Login", "" + HttpUtility.UrlEncode(RequestTool.GetRequestUrlNonDomain()) + "," + GetUrlToken(RequestTool.GetRequestUrlNonDomain()) + "")); } } CurrentTheme_ = B_Lebi_Theme.GetModel("Code='" + themecode + "'"); CurrentPage = B_Lebi_Theme_Page.GetModel("Code='" + pcode + "'"); if (CurrentTheme_ == null) { CurrentTheme_ = new Lebi_Theme(); } Lebi_Theme_Skin skin = B_Lebi_Theme_Skin.GetModel("Theme_id=" + CurrentTheme_.id + " and Code='" + pcode + "'"); if (skin != null) { if (skin.PageSize > 0) { PageSize = skin.PageSize; } } if (CurrentSite_ != null) { SYS.Copyright = CurrentSite_.Copyright; SYS.Domain = CurrentSite_.Domain; SYS.Email = CurrentSite_.Email; SYS.Fax = CurrentSite_.Fax; SYS.Keywords = CurrentSite_.Keywords; SYS.Logoimg = CurrentSite_.Logoimg; SYS.Description = CurrentSite_.Description; SYS.Phone = CurrentSite_.Phone; SYS.QQ = CurrentSite_.QQ; SYS.ServiceP = CurrentSite_.ServiceP; SYS.Name = CurrentSite_.Name; SYS.Title = CurrentSite_.Title; SYS.FootHtml = CurrentSite_.FootHtml; SYS.TopAreaid = CurrentLanguage_.TopAreaid.ToString(); } LBTITLE = ""; LBTITLE += " - Powered by LebiShop"; //底部版权信息 //if (CurrentPage != null) //{ // StringBuilder sb = new StringBuilder(); // sb.Append("Powered by <a style=\"font-size:12px;color:#00497f\" href=\"http://www.lebi.cn\" target=\"_blank\" title=\"LebiShop多语言网上商店系统\">LebiShop</a> "); // sb.Append("V" + SYS.Version + "." + SYS.Version_Son); // try // { // Label label = (Label)this.Page.FindControl("LeBiLicense"); // label.Text = sb.ToString(); // } // catch (System.NullReferenceException) // { // Response.Write("<div style=\"height:100px;padding-top:10px;text-align:left;font-size:12;\">内部错误,请到【配置】=》【站点语言】栏目中重新生成网站<br>"); // Response.Write(sb.ToString() + "</div>"); // Response.End(); // } //} Session["CurrentTheme"] = CurrentTheme_;//session主要是为那些没有LoadTheme方法的页面服务的,如ajax Session["CurrentLanguage"] = CurrentLanguage_; Session["CurrentSite"] = CurrentSite_; //写入cookie NameValueCollection nvs = new NameValueCollection(); nvs.Add("theme", CurrentTheme_.Code); nvs.Add("language", CurrentLanguage_.Code); nvs.Add("site", CurrentSite_.id.ToString()); CookieTool.WriteCookie("ThemeStatus", nvs, 10); //多站点商品显示 if (Shop.Bussiness.Site.Instance.SiteCount > 1) { //if (Shop.LebiAPI.Service.Instanse.Check("domain3admin")) //{ if (DataBase.DBType == "sqlserver") { ProductWhere = "(Charindex('," + CurrentSite_.id + ",',','+Site_ids+',')>0 or Site_ids='') and Product_id = 0 and Type_id_ProductStatus = 101"; ProductCategoryWhere = "(Charindex('," + CurrentSite_.id + ",',','+Site_ids+',')>0 or Site_ids='')"; } if (DataBase.DBType == "access") { ProductWhere = "(Instr(','+Site_ids+',','," + CurrentSite_.id + ",')>0 or Site_ids='') and Product_id = 0 and Type_id_ProductStatus = 101"; ProductCategoryWhere = "(Instr(','+Site_ids+',','," + CurrentSite_.id + ",')>0 or Site_ids='')"; } //} //else //{ // ProductWhere = "Product_id = 0 and Type_id_ProductStatus = 101"; //} } else { ProductWhere = "Product_id = 0 and Type_id_ProductStatus = 101"; ProductCategoryWhere = "1=1"; } //ProductWhere += " and (UserLevel_ids_show='' or UserLevel_ids_show is null or ','+UserLevel_ids_show+',' like '%," + CurrentUserLevel.id + ",%' )"; ProductWhere += " and (IsDel!=1 or IsDel is null)"; }
public static string ReplaceSMSTag(string instr, Lebi_User user, BaseConfig conf) { string language = Language.DefaultLanguage().Code; instr = instr.Replace("{$Domain}", conf.Domain); instr = instr.Replace("{$Time}", DateTime.Now.ToString()); if (user != null) { instr = instr.Replace("{$UserName}", user.UserName); instr = instr.Replace("{$RealName}", user.RealName); instr = instr.Replace("{$UserID}", user.id.ToString()); instr = instr.Replace("{$UserNumber}", user.UserNumber); instr = instr.Replace("{$NickName}", user.NickName); language = user.Language; if (language == "") { user.Language = "CN"; } } else { user = new Lebi_User(); user.Language = "CN"; } string Phone = ""; string Email = ""; string QQ = ""; string Fax = ""; string Name = ""; string Domain = ""; Lebi_Site site = B_Lebi_Site.GetModel(user.Site_id); if (site == null) { site = B_Lebi_Site.GetList("", "Sort desc").FirstOrDefault(); Phone = Language.Content(site.Phone, user.Language); Email = Language.Content(site.Email, user.Language); QQ = Language.Content(site.QQ, user.Language); Fax = Language.Content(site.Fax, user.Language); Name = Language.Content(site.Name, user.Language); Domain = Language.Content(site.Domain, user.Language); } else { Phone = Language.Content(site.Phone, user.Language); Email = Language.Content(site.Email, user.Language); QQ = Language.Content(site.QQ, user.Language); Fax = Language.Content(site.Fax, user.Language); Name = Language.Content(site.Name, user.Language); Domain = Language.Content(site.Domain, user.Language); Lebi_Site mainsite = B_Lebi_Site.GetList("", "Sort desc").FirstOrDefault(); if (Phone == "") { Phone = Language.Content(mainsite.Phone, user.Language); } if (Email == "") { Email = Language.Content(mainsite.Email, user.Language); } if (QQ == "") { QQ = Language.Content(mainsite.QQ, user.Language); } if (Fax == "") { Fax = Language.Content(mainsite.Fax, user.Language); } if (Name == "") { Name = Language.Content(mainsite.Name, user.Language); } if (Domain == "") { Domain = Language.Content(mainsite.Domain, user.Language); } } instr = instr.Replace("{$UserName}", user.UserName); instr = instr.Replace("{$UserID}", user.id.ToString()); //instr = instr.Replace("{$Phone}", Language.Content(conf.Phone, user.Language)); //instr = instr.Replace("{$Email}", Language.Content(conf.Email, user.Language)); //instr = instr.Replace("{$QQ}", Language.Content(conf.QQ, user.Language)); //instr = instr.Replace("{$Fax}", Language.Content(conf.Fax, user.Language)); //instr = instr.Replace("{$SiteName}", Language.Content(conf.Name, user.Language)); //instr = instr.Replace("{$Domain}", conf.Domain); instr = instr.Replace("{$Phone}", Phone); instr = instr.Replace("{$Email}", Email); instr = instr.Replace("{$QQ}", QQ); instr = instr.Replace("{$Fax}", Fax); instr = instr.Replace("{$SiteName}", Name); instr = instr.Replace("{$Domain}", Domain); return(instr); }
/// <summary> /// 生成地址重写规则 /// </summary> public static void CreateURLRewrite() { StringBuilder sb = new StringBuilder(); StringBuilder sb1 = new StringBuilder(); sb.AppendLine("[ISAPI_Rewrite]"); sb1.AppendLine("RewriteEngine On"); sb1.AppendLine("RewriteCompatibility2 On"); sb1.AppendLine("RepeatLimit 200"); sb1.AppendLine("RewriteBase"); List <Lebi_Language> langs = B_Lebi_Language.GetList("", "Sort desc,id asc"); List <Lebi_Theme_Page> models = B_Lebi_Theme_Page.GetList("Type_id_PublishType=123", ""); string str1 = ""; string str2 = ""; string language = ""; foreach (Lebi_Theme_Page model in models) { if (model.PageParameter == "") { str1 = model.PageName; str2 = model.StaticPath + "/" + model.StaticPageName; str2 = ThemeUrl.CheckURL(str2); str1 = str1.Trim('/'); str2 = str2.Trim('/'); str1 = str1.Replace(".", @"\."); str2 = str2.Replace(".", @"\."); foreach (Lebi_Language lang in langs) { Lebi_Site site = B_Lebi_Site.GetModel(lang.Site_id); if (site == null) { site = new Lebi_Site(); } language = site.Path + lang.Path.TrimEnd('/'); language = language.Replace("//", "/"); if (language == "") { continue; } sb.AppendLine(@"RewriteRule /(.*)" + language + "/" + str2 + "(.*) /$1" + language + "/" + str1 + " [N,I]"); sb1.AppendLine(@"RewriteRule " + language + "/" + str2 + "(.*)$ " + language + "/" + str1 + " [NC,N]"); } sb.AppendLine(@"RewriteRule /(.*)" + str2 + "(.*) /$1" + str1 + " [N,I]"); sb1.AppendLine(@"RewriteRule /" + str2 + "(.*)$ /" + str1 + " [NC,N]"); //RewriteRule /CN/(.*)$ /CN/Basket\.aspx\?Basket\.html$1 [NC,N] //RewriteRule /(.*)$ /Basket\.aspx\?Basket\.html$1 [NC,N] } else { str1 = model.PageName + @"\?" + model.PageParameter; str2 = model.StaticPath + "/" + model.StaticPageName; str2 = ThemeUrl.CheckURL(str2); str1 = str1.Trim('/'); str2 = str2.Trim('/'); str1 = str1.Replace(".", @"\."); str2 = str2.Replace(".", @"\."); str1 = RegexTool.ReplaceRegValue(str1, @"{\d+}", ","); str2 = RegexTool.ReplaceRegValue(str2, @"{\d+}", "(.*)"); string[] arr = str1.Split(','); int j = 1; string str_ini = ""; string str_hta = ""; foreach (string ar in arr) { if (ar != "") { str_hta += ar + "$" + j; } j++; if (ar != "") { str_ini += ar + "$" + j; } } foreach (Lebi_Language lang in langs) { Lebi_Site site = B_Lebi_Site.GetModel(lang.Site_id); if (site == null) { site = new Lebi_Site(); } language = site.Path + lang.Path.TrimEnd('/'); language = language.Replace("//", "/"); if (language == "") { continue; } sb.AppendLine(@"RewriteRule /(.*)" + language + "/" + str2 + "(.*) /$1" + language + "/" + str_ini + " [N,I]"); sb1.AppendLine(@"RewriteRule " + language + "/" + str2 + "(.*)$ " + language + "/" + str_hta + " [NC,N]"); } sb.AppendLine(@"RewriteRule /(.*)" + str2 + "(.*) /$1" + str_ini + " [N,I]"); sb1.AppendLine(@"RewriteRule /" + str2 + "(.*)$ /" + str_hta + " [NC,N]"); } } //生成商品分类重写规则 List <Lebi_Pro_Type> tps = B_Lebi_Pro_Type.GetList("", ""); Lebi_Theme_Page tpage = B_Lebi_Theme_Page.GetModel("Code='P_ProductCategory'"); str1 = tpage.PageName + @"\?" + tpage.PageParameter; str1 = str1.Trim('/'); str1 = str1.Replace(".", @"\."); str1 = RegexTool.ReplaceRegValue(str1, @"{\d+}", ","); string[] arr1 = str1.Split(','); string str_ini1 = ""; string str_hta1 = ""; //foreach (string ar in arr1) //{ // if (ar != "") // str_hta1 += ar + "$" + j1; // j1++; // if (ar != "") // str_ini1 += ar + "$" + j1; //} foreach (Lebi_Pro_Type tp in tps) { str_hta1 = arr1[0] + tp.id; str_ini1 = arr1[0] + tp.id; foreach (Lebi_Language lang in langs) { if (Language.Content(tp.IsUrlrewrite, lang.Code) != "1") { continue; } str2 = Language.Content(tp.Url, lang.Code); if (str2 == "") { continue; } str2 = ThemeUrl.CheckURL(str2); str2 = str2.Trim('/'); str2 = str2.Replace(".", @"\."); str2 = RegexTool.ReplaceRegValue(str2, @"{\d+}", "(.*)"); Lebi_Site site = B_Lebi_Site.GetModel(lang.Site_id); if (site == null) { site = new Lebi_Site(); } language = site.Path + lang.Path.TrimEnd('/'); language = language.Replace("//", "/"); language = language.TrimEnd('/'); sb.AppendLine(@"RewriteRule /(.*)" + language + "/" + str2 + "(.*) /$1" + language + "/" + str_ini1 + " [N,I]"); sb1.AppendLine(@"RewriteRule /(.*)" + language + "/" + str2 + "(.*)$ /$1" + language + "/" + str_hta1 + " [NC,N]"); } } HtmlEngine save = new HtmlEngine(); save.CreateFile("httpd.ini", sb.ToString(), "ascii"); save.CreateFile(".htaccess", sb1.ToString(), "ascii"); CreateURLRewrite_shop(); }