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

using System;
using CommunityServer.Components;
using CommunityServer.Controls;

namespace CommunityServer.ControlPanel.Blogs
{
	/// <summary>
	/// Summary description for DeleteLinkCategoryCommand.
	/// </summary>
	public class DeleteLinkCategoryCommand : BlogCommand
	{
		public DeleteLinkCategoryCommand()
		{
		}

	    public override string Message(BlogCommandPage page)
	    {
	        LinkCategory lc = LinkCategories.GetCategory(Int32.Parse(page.Request.QueryString["CategoryID"]),page.CurrentWeblog.SectionID,true);
            if(lc == null)
                throw new Exception("Category does not exist");
            
            return "Are you sure you want to delete <strong>" + lc.Name + "</strong>? All of it's child links will be deleted as well.";
	    }

	    public override void Action(BlogCommandPage page)
	    {
	        LinkCategory lc = LinkCategories.GetCategory(Int32.Parse(page.Request.QueryString["CategoryID"]),page.CurrentWeblog.SectionID,true);
            if(lc == null)
                throw new Exception("Category does not exist");

            LinkCategories.DeleteCategory(lc.LinkCategoryID,page.CurrentWeblog.SectionID);
	    }

        public override void CloseScript(BlogCommandPage page)
        {
        	Modal.ClosePage(page,page.Request.QueryString["CategoryID"]);
        }


        public override string Title
        {
            get
            {
                return "Delete Link Category";
            }
        }

	}
}
