penguin/AstroJS

Javascript framework for my blog

botanjs/src/Astro/Blog/Components/ToggleButton/DeleteArticle.js

raw ยท 1348 bytes

(function(){
	var ns = __namespace( "Astro.Blog.Components.ToggleButton.DeleteArticle" );

    /** @type {Components.MessageBox} */
	var MessageBox                       = __import( "Components.MessageBox" );
	/** @type {Dandelion} */
	var Dand                             = __import( "Dandelion" );
	/** @type {Dandelion.IDOMElement} */
	var IDOMElement                      = __import( "Dandelion.IDOMElement" );
	/** @type {Astro.Bootstrap} */
	var Bootstrap                        = __import( "Astro.Bootstrap" );

	var postData                         = __import( "System.Net.postData" );

	var init = function()
	{
		var stage = Dand.glass( "b_delete", true, Dand.id( "b_entry" ) );
		if( !stage.length ) return;

		stage = stage[0];

		var doDelete = function( confirmed )
		{
			var a_deleteSuccess = function( args ) { window.location.reload( true ); };
			var a_deleteFailed = function( args ) { };

			if( confirmed ) postData(
				"/ajax/del-article"
				, { "article_id": stage.getDAttribute( "aid" ) }
				, a_deleteSuccess
				, a_deleteFailed
			);
		};

		stage.addEventListener(
			'Click'
			, function (e) {
				new MessageBox(
					"Confirm"
					, "Are you sure you want to delete this article?. Comments will also be deleted!"
					, "Yes", "No"
					, doDelete
				).show();
			}
		);
	};

	Bootstrap.regInit( init );
})();