AstroJS/botanjs/src/Astro/Blog/Components/ToggleButton/_this.js
2015-08-14 21:06:23 +08:00

62 lines
1.4 KiB
JavaScript

(function(){
var ns = __namespace( "Astro.Blog.Components" );
/** @type {Dandelion} */
var Dand = __import( "Dandelion" );
/** @type {Dandelion.IDOMElement} */
var IDOMElement = __import( "Dandelion.IDOMElement" );
/** @type {Astro.Bootstrap} */
var Bootstrap = __import( "Astro.Bootstrap" );
/** @type {Astro.Blog} */
var config = __import( "Astro.Blog.Config" );
var postData = __import( "System.Net.postData" );
var ToggleButton = function ( elem, processor, obj )
{
var stage = Dand.id( elem );
if( !stage ) return;
var n_toggle = function (args)
{
if(stage.getAttribute('active'))
{
stage.removeAttribute('active');
}
else
{
stage.setAttribute('active', 1);
}
};
var nError = function (args)
{
}
;
IDOMElement(stage).addEventListener(
'Click'
, function (e) {
var _action = stage.getAttribute('active') ? obj.disable : obj.enable;
postData( processor, _action, n_toggle, nError );
}
);
};
var init = function()
{
var toggles = config.get( "toggle_btns" );
for( var i in toggles )
{
new ToggleButton( toggles[ i ][0], toggles[ i ][1], toggles[ i ][2] );
}
};
Bootstrap.regInit( init );
ns[ NS_EXPORT ]( EX_CLASS, "ToggleButton", ToggleButton );
})();