(function(){

	YAHOO.util.Event.onDOMReady(function(){
		YAHOO.util.Event.on('lnkLoginPersonal', 'click', function(e){
			showLoginForm('personal');
			YAHOO.util.Event.preventDefault(e);
			YAHOO.util.Event.stopPropagation(e);
			return false;
		});

		YAHOO.util.Event.on('lnkLoginBusiness', 'click', function(e){
			showLoginForm('business');
			YAHOO.util.Event.preventDefault(e);
			YAHOO.util.Event.stopPropagation(e);
			return false;
		});

		YAHOO.util.Event.on('btnCancelLogin', 'click', function(e){
			var typeSelect = YAHOO.util.Dom.get('divLoginSelect');
			var visibleElement = YAHOO.util.Dom.get('divLoginForm');
			var hid = YAHOO.util.Dom.get('hidUtype');
			hid.value = '';

			var outAnim = fade(visibleElement, 1, 0, function(){
				YAHOO.util.Dom.addClass(visibleElement, 'removed');
				var inAnim = fade(typeSelect, 0, 1, null, 0.25, 0.25);
				YAHOO.util.Dom.removeClass(typeSelect, 'removed');
				inAnim.animate();
			}, 0.25, 0.25);
			outAnim.animate();

			YAHOO.util.Event.preventDefault(e);
			YAHOO.util.Event.stopPropagation(e);
			return false;
		});

	});

	function showLoginForm(utype){
		var typeSelect = YAHOO.util.Dom.get('divLoginSelect');
		var visibleElement = YAHOO.util.Dom.get('divLoginForm');
		var hid = YAHOO.util.Dom.get('hidUtype');
		hid.value = utype;

		var outAnim = fade(typeSelect, 1, 0, function(){ 
			YAHOO.util.Dom.addClass(typeSelect, 'removed');
			var inAnim = fade(visibleElement, 0, 1, null);
			YAHOO.util.Dom.removeClass(visibleElement, 'removed');
			inAnim.animate();
		});
		outAnim.animate();
	}


	function fade(element, from, to, finishCB, step, time){
		if (step === undefined) step=0.1;
		if (time === undefined) time=0.5;
		var anim = new YAHOO.util.Anim(element, {opacity: {to: to, from: from, by: step}}, time);
		if (finishCB){
			anim.onComplete.subscribe(finishCB);
		}
		return anim;
	}
})();

