예제 #1
0
        public bool Save(HtmlContent content)
        {
            bool result = false;

            if (content == null)
            {
                return(result);
            }

            content.LastModUtc = DateTime.UtcNow;

            if (content.ItemId > -1)
            {
                result = DBHtmlContent.UpdateHtmlContent(
                    content.ItemId,
                    content.ModuleId,
                    content.Title,
                    content.Excerpt,
                    content.Body,
                    content.MoreLink,
                    content.SortOrder,
                    content.BeginDate,
                    content.EndDate,
                    content.LastModUtc,
                    content.LastModUserGuid);
            }
            else
            {
                content.ItemGuid = Guid.NewGuid();

                int newId = DBHtmlContent.AddHtmlContent(
                    content.ItemGuid,
                    content.ModuleGuid,
                    content.ModuleId,
                    content.Title,
                    content.Excerpt,
                    content.Body,
                    content.MoreLink,
                    content.SortOrder,
                    content.BeginDate,
                    content.EndDate,
                    content.CreatedDate,
                    content.CreatedBy,
                    content.UserGuid);

                content.ItemId = newId;

                result = (newId > -1);
            }

            if (result)
            {
                ContentChangedEventArgs e = new ContentChangedEventArgs();
                content.OnContentChanged(e);
            }

            return(result);
        }
예제 #2
0
        public bool Delete(HtmlContent content)
        {
            if (content == null)
            {
                return(false);
            }

            bool result = DBHtmlContent.DeleteHtmlContent(content.ItemId);

            if (result)
            {
                ContentChangedEventArgs e = new ContentChangedEventArgs();
                e.IsDeleted = true;
                content.OnContentChanged(e);
            }

            return(result);
        }
예제 #3
0
        private void LoadFromReader(HtmlContent content, IDataReader reader)
        {
            if (content == null)
            {
                return;
            }
            if (reader == null)
            {
                return;
            }

            content.ItemId      = Convert.ToInt32(reader["ItemID"]);
            content.ModuleId    = Convert.ToInt32(reader["ModuleID"]);
            content.Title       = reader["Title"].ToString();
            content.Excerpt     = reader["Excerpt"].ToString();
            content.Body        = reader["Body"].ToString();
            content.MoreLink    = reader["MoreLink"].ToString();
            content.SortOrder   = Convert.ToInt32(reader["SortOrder"]);
            content.BeginDate   = Convert.ToDateTime(reader["BeginDate"]);
            content.EndDate     = Convert.ToDateTime(reader["EndDate"]);
            content.CreatedDate = Convert.ToDateTime(reader["CreatedDate"]);
            content.CreatedBy   = Convert.ToInt32(reader["UserID"]);

            content.ItemGuid   = new Guid(reader["ItemGuid"].ToString());
            content.ModuleGuid = new Guid(reader["ModuleGuid"].ToString());
            string user = reader["UserGuid"].ToString();

            if (user.Length == 36)
            {
                content.UserGuid = new Guid(user);
            }

            user = reader["LastModUserGuid"].ToString();
            if (user.Length == 36)
            {
                content.LastModUserGuid = new Guid(user);
            }

            if (reader["LastModUtc"] != DBNull.Value)
            {
                content.LastModUtc = Convert.ToDateTime(reader["LastModUtc"]);
            }
        }
예제 #4
0
        public HtmlContent Fetch(int moduleId)
        {
            if (moduleId < 0)
            {
                return(null);
            }

            using (IDataReader reader = DBHtmlContent.GetHtmlContent(moduleId, DateTime.UtcNow))
            {
                if (reader.Read())
                {
                    HtmlContent content = new HtmlContent();
                    LoadFromReader(content, reader);
                    return(content);
                }
            }

            return(null);
        }
예제 #5
0
        public void CreateHistory(Guid siteGuid)
        {
            if (this.itemGuid == Guid.Empty)
            {
                return;
            }

            HtmlContent currentVersion = new HtmlContent(moduleID);

            if (currentVersion.Body == this.Body)
            {
                return;
            }

            ContentHistory history = new ContentHistory();

            history.ContentGuid = currentVersion.ModuleGuid;
            history.ContentText = currentVersion.Body;
            history.SiteGuid    = siteGuid;
            history.UserGuid    = currentVersion.LastModUserGuid;
            history.CreatedUtc  = currentVersion.LastModUtc;
            history.Save();
        }