private void UpdateArticle()
        {
            ArticleInfo objArticle = ArticleController.Get(ArticleId);
            //Normal 
            objArticle.Title = txtTitle.Text;
            objArticle.Author = txtAuthor.Text;
			objArticle.Keywords = txtKeywords.Text;
            /*
            objArticle.Source = txtSource.Text;
            objArticle.Quote = chkQuote.Checked;
            objArticle.Draft = chkDraft.Checked;

            objArticle.LinkUrl = ctlLinkUrl.Url;
            objArticle.PinOrder = Convert.ToInt32(txtPinOrder.Text);
            //other
            if (ArticlePortalSettings.General.Portal_ArticleRequireApproval == true)
            {
                objArticle.Authed = chkAuthed.Checked;
            }
            else
            {
                objArticle.Authed = true;
            }
            objArticle.Featured = chkFeatured.Checked;
            objArticle.Active = chkActive.Checked;
            */
			objArticle.Image = txtImage.Text;
            objArticle.Thumbnail = txtImage.Text;
            
            //objArticle.TopStoriesImage = "/Portals/0/" + drpTopStoriesPosition.SelectedItem.Text;
			objArticle.TopStoriesImage = null;
			/*
            if (drpTopStoriesPosition.SelectedItem.Text != "")
            {
                objArticle.TopStoriesImage = "/Portals/0/" + drpTopStoriesPosition.SelectedItem.Text;
            }
            else
            {
                objArticle.TopStoriesImage = null;
            }*/
			objArticle.PublishTime = PublishHour.SelectedItem.Text + ":" + PublishMinute.SelectedItem.Text + " " + PublishAMPM.SelectedItem.Text;
            
            //if (objArticle.Image.StartsWith("FileID="))
            //{
            //    FileController fc = new FileController();
            //    DotNetNuke.Services.FileSystem.FileInfo fi = new DotNetNuke.Services.FileSystem.FileInfo();
            //    DotNetNuke.Entities.Portals.PortalController ctlPortal = new DotNetNuke.Entities.Portals.PortalController();
            //    DotNetNuke.Entities.Portals.PortalInfo pi = ctlPortal.GetPortal(PortalId);

            //    fi = GetFileInfoById(objArticle.Image);
            //    if (fi != null && System.IO.File.Exists(fi.PhysicalPath))
            //    {
            //        objArticle.Thumbnail = DotNetNuke.Common.Globals.ApplicationPath + "/" + pi.HomeDirectory + "/" + fi.Folder + fi.FileName;
            //        System.IO.FileInfo physicalFile = new System.IO.FileInfo(fi.PhysicalPath);

            //        if (!fi.FileName.ToLower().StartsWith("thumb_"))//文件没有以"thumb_"开头,则先查找是否存在以thumb_ 开头的同名图片
            //        {
            //            if (System.IO.File.Exists(physicalFile.DirectoryName + "\\" + "thumb_" + physicalFile.Name))//存在该文件,则自动指向
            //            {
            //                objArticle.Thumbnail = DotNetNuke.Common.Globals.ApplicationPath + "/" + pi.HomeDirectory + "/" + fi.Folder + "thumb_" + fi.FileName;
            //            }
            //            else//不存在,则生成该文件,然后指向
            //            {
            //                if (ArticlePortalSettings.General.Portal_ArticleGenerateThumb)
            //                {
            //                    Utils.ResizeImage(fi.PhysicalPath, ArticlePortalSettings.General.Portal_ArticleThumbnailSize, physicalFile.DirectoryName + "\\" + "thumb_" + physicalFile.Name);
            //                    objArticle.Thumbnail = DotNetNuke.Common.Globals.ApplicationPath + "/" + pi.HomeDirectory + "/" + fi.Folder + "thumb_" + fi.FileName;
            //                }
            //            }
            //        }
            //    }
            //}
            //Add Categories
            objArticle.Categories = RecursiveHelper.GetAspNetTreeCheckList(tvCategory);

            //Add Tags
            objArticle.Tags = "";
            TagInfo objTag = new TagInfo();
            List<int> tagList = new List<int>();
            foreach (ListItem li in CheckBoxList1.Items)
            {
                if (li.Selected)
                {
                    if (listData.InnerText == "")
                    {
                        objTag = TagController.GetByTag(li.Value.Trim());
                        tagList.Add(objTag.Id);
                    }
                }
            }
            var newTaglist = (from p in tagList select p).Distinct();//remove the  repeated tag item.

            foreach (int item in newTaglist)
            {
                objArticle.Tags += item.ToString() + ",";
            }
            objArticle.Tags = Utils.RemoveSeperator(objArticle.Tags, ",");
            //Tags end

            //date
            if ((txtPublishDate.Text != null) && (txtPublishDate.Text != ""))
            {
                objArticle.PublishDate = Convert.ToDateTime(txtPublishDate.Text);
            }
            else
            {
                objArticle.PublishDate = DateTime.Now;
            }
            if (txtExpireDate.Text != "")
            {
                objArticle.ExpireDate = Convert.ToDateTime(txtExpireDate.Text);
            }

            objArticle.ViewRoles = Utils.GetCheckedItems(cblViewRoles, PortalSettings.AdministratorRoleId);
            //Rating
            objArticle.AllowRating = chkAllowRating.Checked;
            objArticle.RatingRoles = Utils.GetCheckedItems(cblRatingRoles, PortalSettings.AdministratorRoleId);

            //Recommend
            objArticle.AllowRecommend = chkAllowRecommend.Checked;
            objArticle.RecommendRoles = Utils.GetCheckedItems(cblRecommendRoles, PortalSettings.AdministratorRoleId);


            //Comment
            objArticle.AllowComment = chkAllowComment.Checked;
            objArticle.CommentRoles = Utils.GetCheckedItems(cblCommentRoles, PortalSettings.AdministratorRoleId);
            objArticle.AutoAuthComment = chkAutoAuthComment.Checked;

            //Download roles
            objArticle.DownloadRoles = Utils.GetCheckedItems(cblDownloadRoles, PortalSettings.AdministratorRoleId);
            objArticle.Summary = LocalUtils.RemoveAllHtmlTags(txtSummary.Text);
            objArticle.Article = Editor1.Text.Replace("src=&quot;Portals", "src=&quot;/Portals");
            objArticle.Authed = chkPublish.Checked;
        
			BusinessLogic b = new BusinessLogic();
            //Response.Redirect("http://www.google.co.in?b=" + b.ArticleID.ToString(),false);
            b.ArticleID = ArticleId;
            b.IsPagingEnable = chkPaging.Checked;
            b.UpdateExtraFieldArticle();
            ArticleController.Update(objArticle);

            //Now processing attachment

            AttachmentController.DeleteByArticle(ArticleId); //delete attachment first.
            AttachmentInfo ai = new AttachmentInfo();
            foreach (AttachmentInfo item in AttachmentList)
            {
                ai.ArticleId = ArticleId;
                ai.FilePath = item.FilePath;
                AttachmentController.Add(ai);
            }
            //Reset all 
            // ArticleId = -1;
            AttachmentList = new List<AttachmentInfo>();
            gvAttachment.DataSource = AttachmentList;
            gvAttachment.DataBind();
			if (Session["ArticlePageEdit"] != null)
            {
				urlReferrer = Session["ArticlePageEdit"].ToString();
				Response.Write("URL: "+urlReferrer);
                Session.Clear();
                Response.Redirect(urlReferrer);
            }
        }