/**
 * @author Kris
 */

YAHOO.namespace('CalChal.Vars.Flags', 'CalChal.Funcs.Handlers', 'CalChal.Funcs.Anims', 'CalChal.Elements');
var  Y = YAHOO, E=Y.util.Event, D = Y.util.Dom, CC = Y.CalChal, CCE = CC.Elements;

CC.init = function(){
	CCE.chkInvite = D.get('invitePresentation');
	CCE.chkInviteToggle = D.get('company_wrapper');

	CCE.chkLeaflet = D.get('request_leaflets');
	CCE.chkLeafletToggle = D.get('request_leaflets_info');
	
	//Functions
	/**
	* @var Boolean instant
	*********/
	CC.Funcs.Anims.animElementOpen = function( params ){
		if (params.instant === true){
			D.setStyle(params.target, "display", "block");
		} else {
			D.setStyle(params.target, "display", "block");
		}
	};
	
	/**
	* @var Boolean instant
	*********/
	CC.Funcs.Anims.animElementClose = function( params ){
		if (params.instant === true){
			D.setStyle(params.target, "display", "none");
		} else {
			D.setStyle(params.target, "display", "none");
		}
	};
	
	/**
	* Click event handler for the attend presentation checkbox
	************/
	CC.Funcs.Handlers.chkClick = function(e, params){
		//initial state
		if ( params.element.checked === true ){
			CC.Funcs.Anims.animElementOpen(params);
		} else {
			CC.Funcs.Anims.animElementClose(params);
		}
	};
	
	//initial state
	if ( CCE.chkInvite.checked === true ){
		CC.Funcs.Anims.animElementOpen({"element":CCE.chkInvite,"target":CCE.chkInviteToggle, "instant":true});
	} else {
		CC.Funcs.Anims.animElementClose({"element":CCE.chkInvite,"target":CCE.chkInviteToggle, "instant":true});
	}

	if ( CCE.chkLeaflet.checked === true ){
		CC.Funcs.Anims.animElementOpen({"element":CCE.chkLeaflet,"target":CCE.chkLeafletToggle, "instant":true});
	} else {
		CC.Funcs.Anims.animElementClose({"element":CCE.chkLeaflet,"target":CCE.chkLeafletToggle, "instant":true});
	}
	
	//add handlers
	if (CCE.chkInvite){
		E.addListener( CCE.chkInvite, "click", CC.Funcs.Handlers.chkClick, {"element":CCE.chkInvite,"target":CCE.chkInviteToggle} );
	}
	if (CCE.chkLeaflet){
		E.addListener( CCE.chkLeaflet, "click", CC.Funcs.Handlers.chkClick, {"element":CCE.chkLeaflet,"target":CCE.chkLeafletToggle} );
	}
};
E.addListener(window, "load", CC.init);
