//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
//     Copyright (c) Telligent Systems Corporation.  All rights reserved.
// </copyright> 
//------------------------------------------------------------------------------

using System.Xml;
using CommunityServer.Components;

namespace CommunityServer.Blogs.Components
{
	/// <summary>
	/// CS Module to Cross-Post to other blogs using the MetaWeblog API
	/// </summary>
	public class WeblogCrossPostingModule : ICSModule
	{
		public WeblogCrossPostingModule()
		{
		}

		public void Init(CSApplication csa, XmlNode node)
		{
			csa.PostPostUpdate +=new CSPostEventHandler(csa_PostPostUpdate);
		}

		private void csa_PostPostUpdate(IContent content, CSPostEventArgs e)
		{
			if(e.ApplicationType == ApplicationType.Weblog)
			{
				WeblogPost wp = content as WeblogPost;

				if(wp != null && (wp.BlogPostType == BlogPostType.Post || wp.BlogPostType == BlogPostType.Article))
				{
					if(WeblogConfiguration.Instance().EnableCrossPosting && wp.EnableCrossPosting)
					{
						CrossPostingProxy.CrossPost(wp, e.State);
					}
				}
			}
		}
	}
}
