using System;
using Telerik.Sitefinity.Modules.News;
using Telerik.Sitefinity.News.Model;
using Telerik.Sitefinity.Versioning;

namespace Telerik.Sitefinity.Documentation.CodeSnippets.DevGuide.SitefinityEssentials.Modules.RevisionHistory
{
    public partial class RevisionHistorySnippets
    {
        public void DeleteRevisionHistoryForNewsItem(Guid newsItemMasterId, DateTime date)
        {
            // Get the news manager and find the news item
            NewsManager newsManager = NewsManager.GetManager();
            NewsItem newsItem = newsManager.GetNewsItem(newsItemMasterId);

            // Get the version manager
            VersionManager versionManager = VersionManager.GetManager();

            // Delete all the changes with dates older or equal to the specified date
            versionManager.TruncateVersions(newsItem.Id, date);

            // Save the changes
            versionManager.SaveChanges();
        }
    }
}