Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        public void LoadPage()
        {
            CurrentPage = B_Lebi_Theme_Page.GetModel("Code='P_Product'");
            int id = Rint("id");

            product = GetProduct(id);
            Lebi_Site site = B_Lebi_Site.GetModel("IsMobile=1 order by Sort desc");

            Shop.Bussiness.Site website = new Shop.Bussiness.Site();
            if (site != null)
            {
                if (site.Domain != "")
                {
                    tourl = "http://" + site.Domain + "/product.aspx?id=" + product.id;
                }
                else
                {
                    tourl = "http://" + ShopCache.GetMainSite().Domain + website.WebPath;
                    tourl = tourl.TrimEnd('/') + site.Path;
                    tourl = tourl.TrimEnd('/') + "/product.aspx?id=" + product.id;
                }
            }
            Response.Write(tourl);
            tourl = QRfromGoogle(tourl);
        }
Esempio n. 3
0
        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));
        }
Esempio n. 4
0
        public Lebi_Site GetSite(List <Lebi_Site> sites, int id)
        {
            Lebi_Site model = (from m in sites
                               where m.id == id
                               select m).ToList().FirstOrDefault();

            return(model);
        }
Esempio n. 5
0
        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;
            }
        }
Esempio n. 6
0
        public weixin(int _DT_id, Lebi_Site CurrentSite = null)
        {
            DT_id = _DT_id;
            BaseConfig_DT dtbcf = null;

            if (DT_id > 0)
            {
                dtbcf = ShopCache.GetBaseConfig_DT(DT_id);
                if (dtbcf != null)
                {
                    appid          = dtbcf.platform_weixin_id;
                    appkey         = dtbcf.platform_weixin_secret;
                    number         = dtbcf.platform_weixin_number;
                    platform_image = dtbcf.platform_weixin_image;
                }
            }
            if (DT_id == 0 || dtbcf == null)
            {
                if (CurrentSite != null)
                {
                    if (CurrentSite.platform_weixin_id != "" && CurrentSite.platform_weixin_secret != "")
                    {
                        appid  = CurrentSite.platform_weixin_id;
                        appkey = CurrentSite.platform_weixin_secret;
                        number = CurrentSite.platform_weixin_number;
                    }
                    if (appid == "")
                    {
                        appid = ShopCache.GetBaseConfig().platform_weixin_id;
                    }
                    if (appkey == "")
                    {
                        appkey = ShopCache.GetBaseConfig().platform_weixin_secret;
                    }
                    if (number == "")
                    {
                        number = ShopCache.GetBaseConfig().platform_weixin_number;
                    }
                    platform_image = ShopCache.GetBaseConfig().platform_weixin_image;
                }
                else
                {
                    BaseConfig bcf = ShopCache.GetBaseConfig();
                    appid          = bcf.platform_weixin_id;
                    appkey         = bcf.platform_weixin_secret;
                    number         = bcf.platform_weixin_number;
                    platform_image = bcf.platform_weixin_image;
                }
            }
            Model.weixin.token t = GetToken();
            Token = t.access_token;

            Shop.Bussiness.Site site = new Shop.Bussiness.Site();
            url      = "https://api.weixin.qq.com/";
            reurnurl = ShopCache.GetBaseConfig().HTTPServer + "://" + RequestTool.GetRequestDomain() + site.WebPath + "/platform/login_weixin.aspx";
        }
Esempio n. 7
0
        /// <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);
        }
Esempio n. 8
0
        /// <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);
        }
Esempio n. 9
0
        public Lebi_Theme GetTheme(int id)
        {
            Lebi_Theme model = B_Lebi_Theme.GetModel(id);

            if (model == null)
            {
                model = new Lebi_Theme();
            }
            return(model);
        }
Esempio n. 10
0
        /// <summary>
        /// 主题的使用站点
        /// </summary>
        /// <param name="Site_id"></param>
        /// <returns></returns>
        public string GetSiteName(int Site_id)
        {
            string    str   = "";
            Lebi_Site model = B_Lebi_Site.GetModel("id=" + Site_id + "");

            if (model != null)
            {
                str = model.SubName;
            }
            return(str);
        }
Esempio n. 11
0
        /// <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");
        }
Esempio n. 12
0
        /// <summary>
        /// 返回默认语言
        /// </summary>
        /// <returns></returns>
        public static Lebi_Language_Code DefaultLanguage()
        {
            Lebi_Site          site = ShopCache.GetMainSite();
            Lebi_Language_Code lang = B_Lebi_Language_Code.GetList("Code in (select Code from [Lebi_Language] where Site_id=" + site.id + ")", "Code asc").FirstOrDefault();

            if (lang == null)
            {
                lang = new Lebi_Language_Code();
            }
            return(lang);
        }
Esempio n. 13
0
        public static Lebi_Site GetMainSite()
        {
            string    cacheKey = "MainSite";
            Lebi_Site model    = CacheTool.Get(cacheKey) as Lebi_Site;

            if (model == null)
            {
                SetMainSite();
                return(GetMainSite());
            }
            return(model);
        }
Esempio n. 14
0
        /// <summary>
        /// 生成页面皮肤
        /// 针对单个皮肤生成的情况
        /// </summary>
        /// <returns></returns>
        public void CreateSkin()
        {
            string Msg      = "";
            int    ThemeID  = 0;
            int    SkinID   = 0;
            string Content  = "";
            string SkinPath = ""; //皮肤路径
            string Path     = ""; //输入Path要包含路径及文件名

            SkinID = RequestTool.RequestInt("id", 0);
            Lebi_Theme_Skin skin = B_Lebi_Theme_Skin.GetModel(SkinID);
            Lebi_Theme      theme;

            if (skin == null)
            {
                Response.Write("{\"msg\":\"" + Tag("参数错误") + "\"}");
                return;
            }
            ThemeID  = skin.Theme_id;
            theme    = B_Lebi_Theme.GetModel(ThemeID);
            SkinPath = theme.Path_Files + "/" + skin.Path_Skin;
            SkinPath = ThemeUrl.GetFullPath(SkinPath);
            Content  = HtmlEngine.ReadTxt(SkinPath);
            List <Lebi_Language> langs = B_Lebi_Language.GetList("Theme_id=" + theme.id + "", "");

            if (langs.Count == 0)
            {
                Response.Write("{\"msg\":\"" + Tag("请在站点语言设置中关联此模板") + "\"}");
                return;
            }
            Site site = new Site();

            foreach (Lebi_Language lang in langs)
            {
                if (lang.Theme_id != ThemeID)
                {
                    continue;
                }
                Lebi_Site s = B_Lebi_Site.GetModel(lang.Site_id);
                if (s == null)
                {
                    Path = lang.Path + "/" + skin.PageName;
                }
                else
                {
                    Path = s.Path + lang.Path + "/" + skin.PageName;
                }
                Msg = Shop.Bussiness.Theme.CreatAspx(s, lang, theme, skin, Path, Content);
            }
            Response.Write("{\"msg\":\"" + Msg + "\"}");
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            int id = RequestTool.RequestInt("id", 0);

            model = B_Lebi_Site.GetModel(id);
            if (site == null)
            {
                PageError();
                return;
            }
            if (!EX_Admin.Power("language_tag_list", "语言标签列表"))
            {
                WindowNoPower();
            }
            langs = Language.Languages(); //B_Lebi_Language_Code.GetList("", "Code asc");
        }
Esempio n. 16
0
        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;
            }
        }
Esempio n. 17
0
 /// <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));
     }
 }
Esempio n. 18
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!EX_Admin.Power("site_list", "站点列表"))
            {
                PageReturnMsg = PageNoPowerMsg();
            }

            id           = RequestTool.RequestInt("id", 0);
            tab          = RequestTool.RequestString("tab");
            string where = "";
            if (domain3admin && CurrentAdmin.Site_ids != "")
            {
                where += " and id in (" + CurrentAdmin.Site_ids + ")";
            }
            model = B_Lebi_Site.GetModel("id = " + id + "" + where);
            int sitenum = 0;//允许的站点数量

            //if (Shop.LebiAPI.Service.Instanse.Check("domain3"))
            //{
            //    sitenum = 30;
            //}
            //else if (Shop.LebiAPI.Service.Instanse.Check("domain20"))
            //{
            //    sitenum = 20;
            //}
            //else if (Shop.LebiAPI.Service.Instanse.Check("domain10"))
            //{
            //    sitenum = 10;
            //}
            //else if (Shop.LebiAPI.Service.Instanse.Check("domain2"))
            //{
            //    sitenum = 2;
            //}
            //else
            //{
            //    sitenum = 1;
            //}
            sitenum = Shop.Bussiness.Site.Instance.SiteCount;
            models  = B_Lebi_Site.GetList("1=1" + where, "Sort desc", sitenum, 1);
            if (models.Count == 0)
            {
                //没有数据时插入主站数据
                model             = new Lebi_Site();
                model.Copyright   = SYS.Copyright;
                model.Description = SYS.Description;
                model.Fax         = SYS.Fax;
                model.Keywords    = SYS.Keywords;
                model.Logoimg     = SYS.Logoimg;
                model.Name        = SYS.Name;
                model.Phone       = SYS.Phone;
                model.QQ          = SYS.QQ;
                model.ServiceP    = SYS.ServiceP;
                model.Title       = SYS.Title;
                B_Lebi_Site.Add(model);
                model.id = B_Lebi_Site.GetMaxId();
                models.Add(model);
                //mainsite = model;
            }
            else
            {
                if (model == null)
                {
                    model = new Lebi_Site();
                }
            }

            defalutlang = B_Lebi_Language.GetModel("Site_id=" + model.id + " order by id asc");
            if (defalutlang == null)
            {
                defalutlang = new Lebi_Language();
            }
            //foreach (DB.LebiShop.Lebi_Site s in models)
            //{
            //    sitenames += "<li ";
            //    if (model.id == s.id)
            //        sitenames += "class=\"selected\"";
            //    sitenames += "><a href=\"?id=" + s.id + "\"><span>";
            //    //if (mainsite.id == s.id)
            //    //    sitenames += s.SubName;
            //    Lebi_Language lang = B_Lebi_Language.GetModel("Site_id=" + s.id + " order by id asc");
            //    string sname = "";
            //    if (lang == null)
            //        sname = Tag("新站点");
            //    else
            //        sname = s.SubName;
            //    if (sname == "")
            //        sname = Tag("新站点");
            //    sitenames += sname + "</span></a></li>";
            //}
            //if (sitenum > 1 && models.Count < sitenum)
            //{
            //    sitenames += "<li><a href=\"javascript:void(0)\" onclick=\"AddSite()\"><span>" + Tag("添加站点");
            //    sitenames += "</span></a></li>";
            //}
            //开启一个线程同步语种标签
            Thread thread = new Thread(new ThreadStart(UPdateLanguage));

            thread.IsBackground = true;//这样能随主程序一起结束
            thread.Start();
        }
Esempio n. 19
0
 /// <summary>
 /// 增加一条数据
 /// </summary>
 public static int Add(Lebi_Site model)
 {
     return(D_Lebi_Site.Instance.Add(model));
 }
Esempio n. 20
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 public static void Update(Lebi_Site model)
 {
     D_Lebi_Site.Instance.Update(model);
 }
Esempio n. 21
0
        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);
        }
Esempio n. 22
0
        /// <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();
        }
Esempio n. 23
0
        public static weixin GetInstance(int _DT_id, Lebi_Site CurrentSite = null)
        {
            weixin wx = new weixin(_DT_id, CurrentSite);

            return(wx);
        }
Esempio n. 24
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="code">页面标记的代码</param>
        /// <param name="ParaStr">参数字符串</param>
        /// <param name="url">跳转地址</param>
        /// <param name="theme">主题</param>
        /// <returns></returns>
        public static string GetURL(string code, string ParaStr, string url, Lebi_Site site, Lebi_Language lang)
        {
            code = code.Trim();
            if (url != "" && url != null)
            {
                if (url.ToLower().IndexOf("http") == 0)
                {
                    return(url);
                }
                if (url.Contains(":"))
                {
                    string[] arr = url.Split(':');
                    return(GetURL(arr[0], arr[1], "", site, lang));
                }
                return(url);
            }
            List <Lebi_Theme_Page> nodes = ShopCache.GetThemePage();
            Lebi_Theme_Page        node  = (from m in nodes
                                            where m.Code == code
                                            select m).ToList().FirstOrDefault();


            // Lebi_Theme_Page node = B_Lebi_Theme_Page.GetModel("Code='" + code + "'");
            if (node == null)
            {
                return("");
            }

            //Lebi_Theme_Skin skin = B_Lebi_Theme_Skin.GetList("Theme_id=" + theme.id + " and Code='" + code + "'", "").FirstOrDefault();
            //if (skin == null)
            //    return "";
            string res      = "";
            string PageName = "";

            switch (node.Type_id_PublishType)
            {
            case 120:
                res = "";
                break;

            case 121:    //动态地址
                //if (skin.PageName == "")
                PageName = node.PageName;
                //else
                //    PageName = skin.PageName;
                if (node.PageParameter == "")
                {
                    res = "/" + PageName;
                }
                else
                {
                    res = "/" + PageName + "?" + node.PageParameter;
                    res = ConvertURL(ParaStr, res, 121, PageName, node.PageParameter);
                }

                break;

            case 122:    //静态地址
                if (node.StaticPageName != "")
                {
                    res = "/" + node.StaticPath + "/" + node.StaticPageName;
                    res = ConvertURL(ParaStr, res, 122, "", "");
                }
                else
                {
                    //没有设置静态参数时按照动态地址发布
                    PageName = node.PageName;
                    if (node.PageParameter == "")
                    {
                        res = "/" + PageName;
                    }
                    else
                    {
                        res = "/" + PageName + "?" + node.PageParameter;
                        res = ConvertURL(ParaStr, res, 121, PageName, node.PageParameter);
                    }
                }
                break;

            case 123:    //伪静态地址
                if (node.StaticPageName != "")
                {
                    res = "/" + node.StaticPath + "/" + node.StaticPageName;
                    res = ConvertURL(ParaStr, res, 123, "", "");
                }
                else
                {
                    //没有设置伪静态参数时按照动态地址发布
                    PageName = node.PageName;
                    if (node.PageParameter == "")
                    {
                        res = "/" + PageName;
                    }
                    else
                    {
                        res = "/" + PageName + "?" + node.PageParameter;
                        res = ConvertURL(ParaStr, res, 121, PageName, node.PageParameter);
                    }
                }
                break;
            }
            //if (ShopCache.GetMainSite().id != site.id && site.Path != "")
            //    res = Site.Instance.WebPath + "/" + site.Path + "/" + lang.Path + "/" + res;
            //else
            res = Site.Instance.WebPath + "/" + lang.Path + "/" + res;
            //else
            //{
            //    lang.Path = lang.Path.Replace(site.Path, "");
            //    res = Site.Instance.WebPath + "/" + lang.Path + "/" + res;
            //}
            Regex r = new Regex(@"//*/", RegexOptions.Singleline);//目的:防止类似“///”“////”“//////”的情况

            res = r.Replace(res, "/");
            //string urlpara = RequestTool.GetConfigKey("URLPara");
            //if (urlpara != "")
            //{
            //    NameValueCollection nv = LB.Tools.CookieTool.GetCookie(urlpara);
            //    if (nv.Count > 0)
            //    {
            //        string str = "";
            //        foreach (string key in nv.Keys)
            //        {
            //            str += "&" + key + "=" + nv.Get(key);
            //        }
            //        if (res.Contains("?"))
            //            res = res + str;
            //        else
            //            res = res + "?" + str.TrimStart('&');
            //    }
            //}
            return(res);
        }
Esempio n. 25
0
 /// <summary>
 /// 安全方式绑定表单数据
 /// </summary>
 public static Lebi_Site SafeBindForm(Lebi_Site model)
 {
     return(D_Lebi_Site.Instance.SafeBindForm(model));
 }
Esempio n. 26
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                Shop.Bussiness.Site site = new Shop.Bussiness.Site();
                int        order_id      = RequestTool.RequestInt("order_id", 0);
                Lebi_Order order         = B_Lebi_Order.GetModel(order_id);
                if (order == null)
                {
                    Response.Write("ERROR");
                    Response.End();
                    return;
                }
                Lebi_Language language = B_Lebi_Language.GetModel(order.Language_id);
                if (order.IsPaid == 1)
                {
                    Response.Write(Language.Tag("已付款", language.Code));
                    Response.End();
                    return;
                }
                order.Site_id_pay = CurrentSite.id;
                order.Language_id = CurrentLanguage.id;
                Lebi_OnlinePay pay = Shop.Bussiness.Money.GetOnlinePay(order, "yinlianqmf");
                if (pay == null)
                {
                    Response.Write(Language.Tag("系统错误", language.Code));
                    Response.End();
                    return;
                }
                if (pay.FeeRate > 0)
                {
                    order.Money_OnlinepayFee = order.Money_Pay * pay.FeeRate / 100;
                }
                if (order.OnlinePay_id != pay.id)
                {
                    order.OnlinePay_id   = pay.id;
                    order.OnlinePay_Code = pay.Code;
                    order.OnlinePay      = pay.Name;
                }
                B_Lebi_Order.Update(order);
                config = new UmsPayConfig(pay);
                Lebi_Currency currendy = B_Lebi_Currency.GetModel(pay.Currency_id);
                //string notify_url = "http://" + RequestTool.GetRequestDomain() + site.WebPath + "/onlinepay/pinpay/notify_url.aspx";


                Lebi_Site lebisite = B_Lebi_Site.GetModel(order.Site_id_pay);
                if (site == null)
                {
                    returnurl = Shop.Bussiness.Site.Instance.WebPath;
                }
                else
                {
                    Lebi_Language lang = B_Lebi_Language.GetModel(order.Language_id);
                    string        path = "";
                    if (lang != null)
                    {
                        path = lang.Path.TrimEnd('/');
                    }
                    if (lebisite.Domain == "")
                    {
                        returnurl = Shop.Bussiness.Site.Instance.WebPath.TrimEnd('/') + lebisite.Path.TrimEnd('/') + path;
                    }
                    else
                    {
                        returnurl = Shop.Bussiness.Site.Instance.WebPath.TrimEnd('/') + path;
                    }
                }


                returnurl = "http://" + RequestTool.GetRequestDomain() + returnurl.TrimEnd('/') + "/user/OrderDetails.aspx?id=" + order.id;
                decimal order_amount1 = order.Money_Pay * currendy.ExchangeRate * (1 + (pay.FeeRate / 100));
                msg = Payment(config, order, order_amount1);
            }
            finally
            {
            }
        }
Esempio n. 27
0
        /// <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)";
        }