Exemplo n.º 1
0
        protected void lvTheme_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            string themeId = (lvTheme.Items[(e.Item.DataItemIndex)].FindControl("themeId") as HtmlInputHidden).Value.Trim();

            if (e.CommandName == "Link")//点击主题标题链接时触发
            {
                Model.Theme theme = new Model.Theme()
                {
                    ThemeId = themeId
                };
                if (theme.IsError)
                {
                    Msg = "参数格式错误";
                    printMsgToClient();
                    return;
                }
                ThemeManagement.Click(theme.ThemeId);
                Response.Redirect("~/ThemeDisplay.aspx?themeId=" + themeId + "&path=" + lblPath.Text);
            }
            if (e.CommandName == "Del")
            {
                Msg = CollectThemeManagement.UncollectTheme(Convert.ToString(Session["memberId"]), themeId);
                printMsgToClient();
                Bind();
            }
        }
Exemplo n.º 2
0
        public int SaveThemeSettings([FromBody] List <CSSRuleInfo> lstRules)
        {
            string themeCSSPath = System.IO.Path.Combine(_hostingEnvironment.WebRootPath, "admin", "css", "theme.css");

            ThemeManagement themeManagement = new ThemeManagement();

            return(themeManagement.SaveCSSFile(lstRules, themeCSSPath));
        }
Exemplo n.º 3
0
        public int ResetThemeSettings()
        {
            string backupCSSPath = System.IO.Path.Combine(_hostingEnvironment.WebRootPath, "admin", "css", "theme_reset.css");
            string themeCSSPath  = System.IO.Path.Combine(_hostingEnvironment.WebRootPath, "admin", "css", "theme.css");;

            ThemeManagement themeManagement = new ThemeManagement();

            return(themeManagement.ResetThemeSettings(backupCSSPath, themeCSSPath));
        }
Exemplo n.º 4
0
 /// <summary>
 /// 根据关键词匹配主题标题或内容(模糊查询)并绑定
 /// </summary>
 /// <param name="key"></param>
 void search(string key)
 {
     dt = ThemeManagement.SelectByKey(key);
     if (dt.Rows.Count == 0)
     {
         Msg = "未查找到任何主题";
         printMsgToClient();
     }
     lvTheme.DataSource = dt;
     lvTheme.DataBind();
 }
Exemplo n.º 5
0
 void Bind()
 {
     SomeMethod.IfLogin(this);
     dt = ThemeManagement.SelectMyCollect(Convert.ToString(Session["memberId"]));
     if (dt.Rows.Count == 0)
     {
         Msg = "暂未收藏任何主题";
         printMsgToClient();
     }
     lvTheme.DataSource = dt;
     lvTheme.DataBind();
 }
Exemplo n.º 6
0
        public ActionResult Index()
        {
            AddJS("TinyColorPicker", "/cbuilderassets/js/corejs/edit-2-tinyColorPicker.js");
            AddJS("ColorPicker", "/cbuilderassets/js/corejs/edit-2-colors.js");
            AddJS("UIComponent", "/admin/js/UIComponents.js");
            AddJS("ThemeSettings", "/admin/js/themesettings.js");
            //AddJS("ColorPicker", "/lib/js/colorpicker.js");
            //AddCSS("ColorPicker", "/lib/css/colorpicker.css");


            string themeCSSPath = System.IO.Path.Combine(_hostingEnvironment.WebRootPath, "admin", "css", "theme.css");
            string cssText      = System.IO.File.ReadAllText(themeCSSPath);

            CssParser            parser = new CssParser();
            List <CssParserRule> rules  = parser.ParseAll(cssText).ToList();

            ThemeManagement themeManagement            = new ThemeManagement();
            List <MainComponentSettings> lstComponents = themeManagement.MapRulesToComponent(rules);

            List <MainComponentSettings> lstOtherComponents = lstComponents.FindAll(x => !x.IsPredefinedThemeSelector);

            List <MainComponentSettings> lstButtonComponents     = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.buttonSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);
            List <MainComponentSettings> lstTextColorComponents  = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.textColorSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);
            List <MainComponentSettings> lstLinkComponents       = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.linkSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);
            List <MainComponentSettings> lstBackgroundComponents = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.backgroundSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);
            List <MainComponentSettings> lstPillComponents       = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.pillsSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);
            List <MainComponentSettings> lstCapsuleComponents    = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.capsuleSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);
            List <MainComponentSettings> lstAlertBoxComponents   = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.alertBoxSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);
            List <MainComponentSettings> lstBadgeComponents      = lstComponents.FindAll(x => Array.IndexOf(PredefinedCSS.badgeSelectors, x.Rules.FirstOrDefault().Selectors.FirstOrDefault()) > -1);


            ThemeSettingsViewModel themeSettingsViewModel = new ThemeSettingsViewModel();

            themeSettingsViewModel.OtherComponents      = lstOtherComponents;
            themeSettingsViewModel.ButtonComponents     = lstButtonComponents;
            themeSettingsViewModel.TextColorComponents  = lstTextColorComponents;
            themeSettingsViewModel.LinkComponents       = lstLinkComponents;
            themeSettingsViewModel.BackgroundComponents = lstBackgroundComponents;
            themeSettingsViewModel.PillComponents       = lstPillComponents;
            themeSettingsViewModel.AlertBoxComponents   = lstAlertBoxComponents;
            themeSettingsViewModel.BadgeComponents      = lstBadgeComponents;

            return(View(themeSettingsViewModel));
        }
Exemplo n.º 7
0
        protected void btnPubTheme_Click(object sender, EventArgs e)
        {
            //判断是否登录
            SomeMethod.IfLogin(this.Parent.Page);
            Theme theme = new Theme()
            {
                BelongToDivision = ddlDivision.SelectedValue.Trim(),
                Clicks           = 0,
                Creator          = Convert.ToString(Session["memberId"]),
                IsEssence        = false,
                IsSettop         = false,
                PublishTime      = DateTime.Now,
                ThemeId          = ThemeManagement.CreateThemeId(),
                ThemeText        = Server.UrlDecode(hidContent.Value.Trim()),
                Title            = txtTitle.Text.Trim()
            };

            printMsgToClient(ThemeManagement.CreateTheme(theme));
        }
Exemplo n.º 8
0
 void Bind()
 {
     if (Session["role"] != null)
     {
         dt = ThemeManagement.SelectMyTheme(Convert.ToString(Session["memberId"]));
         if (dt.Rows.Count == 0)
         {
             Msg = "暂未发布任何主题";
             printMsgToClient();
             return;
         }
         lvTheme.DataSource = dt;
         lvTheme.DataBind();
     }
     else
     {
         Response.Redirect("~/Login.aspx");
     }
 }
Exemplo n.º 9
0
 protected void lvTheme_ItemCommand(object sender, ListViewCommandEventArgs e)
 {
     if (e.CommandName == "Link")//点击主题标题链接时触发
     {
         string      themeId = (lvTheme.Items[(e.Item.DataItemIndex)].FindControl("themeId") as HtmlInputHidden).Value.Trim();
         Model.Theme theme   = new Model.Theme()
         {
             ThemeId = themeId
         };
         if (theme.IsError)
         {
             Msg = "参数格式错误";
             printMsgToClient();
             return;
         }
         ThemeManagement.Click(theme.ThemeId);
         Response.Redirect("~/ThemeDisplay.aspx?themeId=" + themeId + "&path=" + lblDivisionName.Text.Trim());
     }
 }
Exemplo n.º 10
0
 void Bind()
 {
     if (Request["divisionName"] != null)
     {
         //【1】绑定公告栏中的信息
         lblDivisionName.Text = Convert.ToString(Request["divisionName"]);//版块名称
         dt = ModeratorManagement.SelectAllModerator(Request["divisionName"]);
         lblModeratorName.Text = "&nbsp;&nbsp;&nbsp;&nbsp;版主:";
         for (int i = 0; i < dt.Rows.Count; i++)
         {
             lblModeratorName.Text += dt.Rows[i]["name"];
         }
         lblBulletin.Text = "版块公告:" + BulletinManagement.selectBulletin(Request["divisionName"]);
         //【2】绑定路径
         lblDivision.Text = Request["divisionName"].Trim();//路径
         //【3】绑定主题目录
         lvTheme.DataSource = ThemeManagement.SelectByTime(Request["divisionName"]);
         lvTheme.DataBind();
     }
 }
Exemplo n.º 11
0
        void Bind()//绑定数据
        {
            if (Request.QueryString["themeId"] != null)
            {
                if (Request["path"] != null)
                {
                    lbtnPath.Text = Convert.ToString(Request["path"]).Trim();//设置上一级的路径
                }
                Theme theme = new Theme()
                {
                    ThemeId = Convert.ToString(Request.QueryString["themeId"])
                };
                if (theme.IsError)
                {
                    Msg = "参数格式错误";
                    printMsgToClient();
                    return;
                }
                #region 动态生成主题
                dt = ThemeManagement.SelectByThemeId(theme.ThemeId);
                if (dt.Rows.Count == 1)
                {
                    ThemeId.Text                = "【" + Convert.ToString(dt.Rows[0]["theme_id"]) + "】" + Convert.ToString(dt.Rows[0]["title"]);//标题
                    MemberId.InnerHtml          = Convert.ToString(dt.Rows[0]["creator"]);
                    MemberId.HRef               = "~/Others.aspx?memberId=" + Convert.ToString(dt.Rows[0]["creator"]);
                    xp.Attributes["style"]      = "background-image:url(" + SomeMethod.GetLevelPicPath(dt.Rows[0]["xp"]) + ");";     //等级图标
                    text.InnerHtml              = Server.UrlDecode(Convert.ToString(dt.Rows[0]["theme_text"]));                      //主题内容
                    lblPublishiTime.Text        = "发表于:" + Convert.ToString(dt.Rows[0]["publish_time"]);                             //发布时间
                    picture.Attributes["style"] = "background-image:url(" + SomeMethod.GetUserPicPath(dt.Rows[0]["picture"]) + ");"; //头像

                    UserName.InnerHtml = Convert.ToString(dt.Rows[0]["name"]);                                                       //查找用户名
                }
                else
                {
                    Msg = "主题不存在";
                    printMsgToClient();
                    return;
                }
                #endregion
                #region 动态生成评论
                dt = CriticismManagement.SelectByThemeId(theme.ThemeId);
                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    #region 生成一条评论并显示
                    //生成如下html代码
                    //<div class="tr">
                    //<div class="left">
                    //    <img class="pic" src="头像路径">
                    //    <div class="person">
                    //        <a href="#">账号</a>
                    //        <a href="javascript:__doPostBack('addConcern','');" onclick="concernClick()" runat="server" onserverclick="Unnamed_ServerClick"><img src="Image/ThemeDisplay/关注.png" style="width: 40px; height: 20px;" /></a>
                    //    </div>
                    //    <div>
                    //        <div class="name" style="text-align: left;">用户名</div>
                    //        <img class="lv" src="等级图片路径"/>
                    //    </div>
                    //</div>
                    //<div class="right">
                    //    <div class="text"></div>
                    //    <div class="operate">
                    //        <input type="hidden" value="评论的编号" />
                    //        <div class="lblPublishiTime">发布时间</div>
                    //        <a class="pic1" href="javascript:void(0)" onclick="reportClick()"><img src="Image/ThemeDisplay/举报.png"/></a>
                    //        <a class="pic2" href="javascript:void(0)" onclick="criticismClick()"><img src="Image/ThemeDisplay/评论.png"/></a>
                    //    </div>
                    //</div>
                    //</div>

                    sb.Append("<div class=\"tr\">");
                    sb.Append("<div class=\"left\"><img class=\"pic\" src=\"");
                    sb.Append(SomeMethod.GetUserPicPath(dt.Rows[i]["picture"]));                    //头像路径
                    sb.Append("\"/><div class=\"person\"><a href=\"");
                    sb.Append("Others.aspx?memberId=" + Convert.ToString(dt.Rows[0]["member_id"])); //账号链接路径
                    sb.Append("\">");
                    sb.Append(dt.Rows[i]["member_id"]);                                             //账号
                    sb.Append("</a><a href=\"javascript:__doPostBack('addConcern','');\" onclick=\"concernClick()\" runat=\"server\" onserverclick=\"Unnamed_ServerClick\"><img src=\"Image/ThemeDisplay/关注.png\" style=\"width: 40px; height: 20px;\" /></a></div><div><div class=\"name\" style=\"text-align: left;\">");
                    sb.Append(Convert.ToString(dt.Rows[0]["name"]));                                //用户名
                    sb.Append("</div><img class=\"lv\" src=\"");
                    sb.Append(SomeMethod.GetLevelPicPath(dt.Rows[i]["xp"]));                        //等级图片路径
                    sb.Append("\"/></div></div><div class=\"right\"><div class=\"text\"><p>");
                    sb.Append(Server.UrlDecode(Convert.ToString(dt.Rows[i]["criticism_text"])));    //评论
                    sb.Append("</p></div><div class=\"operate\"><input type=\"hidden\" value=\"");
                    sb.Append(dt.Rows[i]["criticism_id"]);                                          //评论编号
                    sb.Append("\" /><div class=\"lblPublishiTime\">发表于:");
                    sb.Append(dt.Rows[i]["publish_time"]);                                          //发布时间
                    sb.Append("</div><a class=\"pic1\" href=\"javascript:void(0)\" onclick=\"reportClick()\"><img src=\"Image/ThemeDisplay/举报.png\" style=\"width: 30px; height: 30px\"/></a><a href=\"javascript:void(0)\" onclick=\"criticismClick()\"><img class=\"pic2\" src=\"Image/ThemeDisplay/评论.png\" style=\"width: 30px; height: 30px\" /></a></div></div></div>");
                    #endregion
                }
                criticisms.InnerHtml = sb.ToString();
                #endregion
            }
        }
Exemplo n.º 12
0
 protected void lbEssence_Click(object sender, EventArgs e)//按精华
 {
     lvTheme.DataSource = ThemeManagement.SelectByEssence(Convert.ToString(Request["divisionName"]));
     lvTheme.DataBind();
 }