Exemplo n.º 1
0
    protected void AddNewsBtn_Click(object sender, EventArgs e)
    {
        bool checkForm = CheckValidate();
        if (checkForm)
        {
            M_Article Articlemodel = new M_Article();
            Articlemodel.Id = ArticleId;
            #region 所有情况下
            Articlemodel.Author = txtAuthor.Text.Trim();
            if (!string.IsNullOrEmpty(Request.Form["ddlColId"]))
                Articlemodel.ColId = int.Parse(Request.Form["ddlColId"]);

            //添加时间
            if (txtAddTime.Text.Trim().Length != 0)
            {
                if (Function.IsDate(txtAddTime.Text.Trim().ToString()))
                    Articlemodel.AddTime = DateTime.Parse(txtAddTime.Text.Trim().ToString());
                else
                    Function.ShowSysMsg(0, "<li>你输入的日期格式不对</li><li><a href='javascript:window.history.back()'>返回上一步</a></li>");
            }
            else
                Articlemodel.AddTime = DateTime.Now;

            Articlemodel.ExpireTime = Convert.ToDateTime(txtExpireTime.Text.Trim());
            Articlemodel.ViewEndTime = txtViewEndTime.Text.Trim();
            Articlemodel.UpdateTime = DateTime.Now;
            Articlemodel.ShortContent = SiteBll.GetFiltering(txtShortContent.Text.Trim());
            Articlemodel.Source = txtSource.Text.Trim();
            #region 关键字

            string tagIdStr = string.Empty;
            string nameStr = txtTagNameStr.Text.Trim();
            nameStr = Regex.Replace(nameStr, @"\s+", "|", RegexOptions.IgnoreCase);
            if (nameStr.Length != 0)
            {
                if (nameStr.StartsWith("|"))
                    nameStr = nameStr.Substring(1, nameStr.Length - 1);
                if (nameStr.EndsWith("|"))
                    nameStr = nameStr.Substring(0, nameStr.Length - 1);
                B_Tag tagBll = new B_Tag();
                DataRow dr = tagBll.AddTagStr(nameStr, ChannelModel.ModelType, 0, "后台管理员");
                if (dr != null)
                {
                    tagIdStr = "|" + dr[0] + "|";
                    nameStr = "|" + dr[1] + "|";
                }
                else
                {
                    tagIdStr = "";
                    nameStr = "";
                }
            }
            Articlemodel.TagIdStr = tagIdStr;
            Articlemodel.TagNameStr = nameStr;
            #endregion
            Articlemodel.IsFocus = chkBoxIsFocus.Checked;
            Articlemodel.IsHeader = chkBoxIsHeader.Checked;
            Articlemodel.IsIrregular = chkBoxIsIrregular.Checked;
            Articlemodel.IsRecommend = chkBoxIsRecommend.Checked;
            Articlemodel.IsShowCommentLink = IsShowCommentLink.Checked;
            Articlemodel.IsSideShow = chkBoxIsSideShow.Checked;
            Articlemodel.IsTop = chkBoxIsTop.Checked;

            Articlemodel.Title = SiteBll.GetFiltering(txtTitle.Text.Trim());
            Articlemodel.LongTitle = SiteBll.GetFiltering(txtLongTitle.Text.Trim());
            Articlemodel.TitleColor = txtTitleColor.Text.Trim();
            Articlemodel.TitleFontType = Int32.Parse(ddlTitleFontType.SelectedValue.Trim());
            Articlemodel.UId = AdminModel.UserId;
            Articlemodel.UName = AdminModel.LoginName;
            Articlemodel.AdminUId = AdminModel.UserId;
            Articlemodel.AdminUName = AdminModel.AdminName;
            Articlemodel.UserType = 1;
            Articlemodel.Status = 3;
            //头条文章属性设置
            Articlemodel.HeaderFont = txtHeaderFont.Text.Trim() + "|" + ddlHeaderProPerty.SelectedValue + "|" + ddlHeaderSize.SelectedValue + "|" + txtHeaderColor.Text.Trim();
            Articlemodel.HeaderImgPath = txtHeaderImgPath.Value;
            #endregion
            if (rbOuter.Checked == true)
            {
                Articlemodel.OuterUrl = txtOuterUrl.Text.Trim();
            }
            #region 不是外部链接地址情况

                if (rbComm.Checked == true)
                {
                    Articlemodel.TitleType = 1;
                }
                else if (rbImg.Checked == true)
                {
                    Articlemodel.TitleType = 2;
                    Articlemodel.TitleImgPath = Request.Form["txtTitleImgPath"].Trim();
                }
            if (!rbOuter.Checked)
            {
                if (Request.Form["ChargeTypeRadioButtonList"] == "2")
                    Articlemodel.ChargeHourCount = Int32.Parse(txtChargeHourCount.Text.Trim());
                //重复收费方式
                if (rdBtnChargeType1.Checked)
                    Articlemodel.ChargeType = 1;
                if (rdBtnChargeType2.Checked)
                {
                    Articlemodel.ChargeType = 2;
                    Articlemodel.ChargeHourCount = Int32.Parse(txtChargeHourCount.Text.Trim());
                }
                if (rdBtnChargeType3.Checked)
                {
                    Articlemodel.ChargeType = 3;
                    Articlemodel.ChargeViewCount = Int32.Parse(txtChargeViewCount.Text.Trim());
                }
                if (rdBtnChargeType4.Checked)
                {
                    Articlemodel.ChargeType = 4;
                    Articlemodel.ChargeHourCount = Int32.Parse(txtChargeHourCount.Text.Trim());
                    Articlemodel.ChargeViewCount = Int32.Parse(txtChargeViewCount.Text.Trim());
                }
                if (rdBtnChargeType5.Checked)
                {
                    Articlemodel.ChargeType = 5;
                    Articlemodel.ChargeHourCount = Int32.Parse(txtChargeHourCount.Text.Trim());
                    Articlemodel.ChargeViewCount = Int32.Parse(txtChargeViewCount.Text.Trim());
                }
                if (rdBtnChargeType6.Checked)
                    Articlemodel.ChargeType = 6;
                B_ConvertImage convertBll = new B_ConvertImage(SiteModel.Domain, InfoModel.UploadPath);
                if (chkBoxRemoteSaveImage.Checked)
                {

                    txtContent.Value = convertBll.ConvertLocalImagePath(txtContent.Value);

                }
                else
                {
                    txtContent.Value = convertBll.ConvertImgePath(txtContent.Value);
                }
                Articlemodel.Content = SiteBll.GetFiltering(txtContent.Value);
                Articlemodel.Content = Articlemodel.Content.Replace(@"<div style=""page-break-after: always""><span style=""display: none"">&nbsp;</span></div>", "{Ky:PAGE}");
                //生成的格式
                Articlemodel.PageType = int.Parse(rdBtnPageType.SelectedValue);
                Articlemodel.IsOpened = int.Parse(rdBtnIsOpened.SelectedValue.Trim());
                if (Articlemodel.IsOpened == 0)
                {
                    string groupIdstr = string.Empty;
                    foreach (ListItem li in chkBoxGroupIdStr.Items)
                    {
                        if (li.Selected)
                        {
                            groupIdstr += li.Value + "|";
                        }
                    }
                    Articlemodel.GroupIdStr = "|" + groupIdstr;
                }
                else { Articlemodel.GroupIdStr = ""; }
                Articlemodel.HitCount = Int32.Parse(txtHitCount.Text.Trim());
                Articlemodel.IsAllowComment = chkBoxIsAllowComment.Checked;
                Articlemodel.PointCount = Int32.Parse(txtPointCount.Text.Trim());
                Articlemodel.StarLevel = ddlStarLevel.SelectedValue.Trim();
                //文章所属数据表 Articlemodel.TableName="";
                Articlemodel.TemplatePath = Request.Form["txtTemplatePath"].Trim();
                //文章所属专题
                string idStr = string.Empty;
                for (int i = 0; i < lBoxTopicIdStr.Items.Count; i++)
                {
                    if (lBoxTopicIdStr.Items[i].Selected)
                    {
                        idStr += lBoxTopicIdStr.Items[i].Value + "|";
                    }
                }
                if (idStr != "")
                    Articlemodel.SpecialIdStr = "|" + idStr;
                else
                    Articlemodel.SpecialIdStr = "";
                if (txtViewer.Text.Trim() != string.Empty)
                {
                    Articlemodel.ViewUName = "|" + txtViewer.Text.Trim() + "|";
                    if (txtViewEndTime.Text.Trim() == "")
                    {
                        litMsg.Text = "<script>alert('签收结束时间必须填写');</script>";
                        return;
                    }
                }
                else
                    Articlemodel.ViewUName = string.Empty;
            }
            #endregion

            #region 保存

            if (!CheckValidate())
            {
                return;
            }
            B_Article AddArticle = new B_Article();
            if (ArticleId > 0)
            {
                //返回文章ID
                ArticleId = AddArticle.Update(Articlemodel);
            }
            else
            {
                ArticleId = AddArticle.Add(Articlemodel);
            }
            if (chkBoxIsCreate.Checked)
            {
                DataRow dr = CreateBll.GetInfoById("kyarticle", ArticleId);
                CreateBll.CreateSingleInfo(dr);
            }
            Response.Redirect("InfoList.aspx?ChId=" + ChannelId + "&ColId=" + Articlemodel.ColId);

            #endregion  保存
        }
    }
Exemplo n.º 2
0
        private string GetContent(M_Collection collectionM, string contentStr)
        {
            this.ColumnM = this.ColumnBll.GetColumn(collectionM.ColId);
            this.ChannelM = this.ChannelBll.GetChannel(this.ColumnM.ChId);
            this.ModelM = this.InfoModelBll.GetModel(this.ChannelM.ModelType);
            this.SiteModel = this.SiteBll.GetSiteModel();
            B_ConvertImage image = new B_ConvertImage(this.SiteModel.Domain, this.ModelM.UploadPath);
            string simpleFilterRule = collectionM.SimpleFilterRule;
            string pattern = string.Empty;
            string complexityFilterRule = collectionM.ComplexityFilterRule;
            if (complexityFilterRule != "")
            {
                string[] strArray = complexityFilterRule.Split(new char[] { ',' });
                for (int i = 0; i < strArray.Length; i++)
                {
                    this.SuperiorM = this.SuperiorBll.GetIdBySuperior(int.Parse(strArray[i].ToString()));
                    pattern = this.TransferStr(this.SuperiorM.StartCode) + "((?:.|\n)*?)" + this.TransferStr(this.SuperiorM.EndCode);
                    contentStr = this.SuperiorHtml(contentStr, pattern);
                }
            }
            if (simpleFilterRule != "")
            {
                string[] strArray2 = simpleFilterRule.Split(new char[] { ',' });
                for (int j = 0; j < (strArray2.Length - 1); j++)
                {
                    switch (int.Parse(strArray2[j].ToString()))
                    {
                        case 0:
                            contentStr = this.FilterObject(contentStr);
                            break;

                        case 1:
                            contentStr = this.FilterScript(contentStr);
                            break;

                        case 2:
                            contentStr = this.FilterStyle(contentStr);
                            break;

                        case 3:
                            contentStr = this.FilterDiv(contentStr);
                            break;

                        case 4:
                            contentStr = this.FilterSpan(contentStr);
                            break;

                        case 5:
                            contentStr = this.FilterTableProtery(contentStr);
                            break;

                        case 6:
                            contentStr = this.FilterImg(contentStr);
                            break;

                        case 7:
                            contentStr = this.FilterFont(contentStr);
                            break;

                        case 8:
                            contentStr = this.FilterA(contentStr);
                            break;

                        case 9:
                            contentStr = this.RemoveHtml(contentStr);
                            break;
                    }
                }
            }
            contentStr = image.ConvertLocalImagePath(contentStr);
            contentStr = image.ConvertContent(contentStr);
            return contentStr;
        }