Exemple #1
0
        /// <summary>
        /// 复制一个主题
        /// </summary>
        public void Theme_Copy()
        {
            if (!EX_Admin.Power("theme_edit", "编辑模板"))
            {
                AjaxNoPower();
                return;
            }
            int        id    = RequestTool.RequestInt("id", 0);
            Lebi_Theme theme = B_Lebi_Theme.GetModel(id);

            if (theme == null)
            {
                Response.Write("{\"msg\":\"" + Tag("参数错误") + "\"}");
                return;
            }
            string oldfilepath = theme.Path_Files.Clone().ToString();

            theme.Code        = "";
            theme.LebiUser    = SYS.LicenseUserName;
            theme.LebiUser_id = 0;
            theme.Path_Advert = theme.Path_Advert.Replace(theme.Path_Files, theme.Path_Files + "_[copy]");
            theme.Path_CSS    = theme.Path_CSS.Replace(theme.Path_Files, theme.Path_Files + "_[copy]");
            theme.Path_Image  = theme.Path_Image.Replace(theme.Path_Files, theme.Path_Files + "_[copy]");
            theme.Path_JS     = theme.Path_JS.Replace(theme.Path_Files, theme.Path_Files + "_[copy]");
            theme.Path_Files  = theme.Path_Files + "_[copy]";
            theme.Name        = theme.Name + "_[copy]";
            theme.Time_Add    = System.DateTime.Now;
            B_Lebi_Theme.Add(theme);
            theme.id   = B_Lebi_Theme.GetMaxId();
            theme.Code = SYS.LicenseUserName + "_" + theme.id;
            B_Lebi_Theme.Update(theme);
            //复制皮肤
            List <Lebi_Theme_Skin> skins = B_Lebi_Theme_Skin.GetList("Theme_id=" + id + "", "");

            foreach (Lebi_Theme_Skin skin in skins)
            {
                skin.Theme_id = theme.id;
                B_Lebi_Theme_Skin.Add(skin);
            }
            //复制广告位
            List <Lebi_Theme_Advert> adverts = B_Lebi_Theme_Advert.GetList("Theme_id=" + id + "", "");

            foreach (Lebi_Theme_Advert advert in adverts)
            {
                advert.Theme_id = theme.id;
                B_Lebi_Theme_Advert.Add(advert);
                int adid = B_Lebi_Theme_Advert.GetMaxId();
                //复制广告
                List <Lebi_Advert> ads = B_Lebi_Advert.GetList("Theme_Advert_id=" + advert.id + "", "");
                foreach (Lebi_Advert ad in ads)
                {
                    ad.Theme_id        = theme.id;
                    ad.Theme_Advert_id = adid;
                    B_Lebi_Advert.Add(ad);
                }
            }
            //==============================================
            //复制文件
            string varFromDirectory = HttpContext.Current.Server.MapPath(@"~/" + oldfilepath);
            string varToDirectory   = HttpContext.Current.Server.MapPath(@"~/" + theme.Path_Files);

            FileTool.CopyFiles(varFromDirectory, varToDirectory);
            Response.Write("{\"msg\":\"" + Tag("OK") + "\"}");
        }