
/************************************************************
	Title: 	Form Effects JS
	Author:	AgencyNet
	Date: 	Aug 08
	Desc:		Gives focus/blur effects to forms
		Will have to pass class name and options cover the basics,
		borderColor and backgroundColor.  Initial values are grabbed
		from CSS
	
	Requires:
		mootools V 1.1

************************************************************/

var FormEffects = new Class({ 
	options: {
		//Color Values for form areas
		borderColor:			'ffffff',
		backgroundColor:	'ffffff'
	},
//~~~~~~~~~~~~~~~~~~~~~~>>>>>><<<<<<~~~~~~~~~~~~~~~~~~~~~~//	
	initialize: function(formClass){
		if(formClass == 'smartSearch'){
			this.formEffects = $(formClass);
			this.formEffects.effect = new Fx.Styles(this.formEffects, {wait: false, duration: 500, transition:Fx.Transitions.Quad.easeOut});
			this.addFormEvents(this.formEffects);
		}	else {
			//get all form elements
			this.formEffects = $$(formClass);
			this.formEffects.each(function(el){
			el.effect = new Fx.Styles(el, {wait: false, duration: 500, transition:Fx.Transitions.Quad.easeOut});
			this.addFormEvents(el);
			}.bind(this));
		}
		
		//alert(this.formEffects);
		

				
		//Get TagData maybe keep as an internal function (not a seperate class)
		//this.tagsArray = new TagData();
		//alert(this.tagsArray.allTags);
		//alert(this.tagsArray.);
		
	},
//~~~~~~~~~~~~~~~~~~~~~~>>>>>><<<<<<~~~~~~~~~~~~~~~~~~~~~~//
	addFormEvents: function(elements)	{
		elements.addEvent('focus', function(){
			elements.effect.start({ 'background-color':'#e4fec4' });																					
			elements.setStyle('border-color', '#9edf4f');																				 
		}.bind(this));
		
		elements.addEvent('blur', function(){
			elements.effect.start({ 'background-color':'#ffffff' });																					
			elements.setStyle('border-color', '#ffffff');
		}.bind(this));
	}
//~~~~~~~~~~~~~~~~~~~~~~>>>>>><<<<<<~~~~~~~~~~~~~~~~~~~~~~//	
});


FormEffects.implement(new Options);
FormEffects.implement(new Events);

//Just for reference
//window.onDomReady(VacationSurvivalGuide.initialize.bind(VacationSurvivalGuide));