window.addEvent('domready', function() {
	if ( $defined( $('calendar1') ) ) {
		new vlaDatePicker('calendar1', { style: 'adobe_cs3', format: 'y/m/d', separator: '-', ieTransitionColor: '', prefillDate: 'false' }); 
	}
	if ( $defined( $('calendar2') ) ) {
		new vlaDatePicker('calendar2', { style: 'adobe_cs3', format: 'y/m/d', separator: '-', ieTransitionColor: '', prefillDate: 'false' }); 
	}

	$$('table.form tr').each(function(el,i){
		classname = ( i % 2 ) ? 'odd' : 'even';
		if ( !el.hasClass('buttons') ) {
			el.addClass( classname );
		}
	});

	$$('table.resultset tr').each(function(el,i){
		classname = ( i % 2 ) ? 'odd' : 'even';
		if ( !el.hasClass('buttons') && !el.getParent('table').hasClass('no-highlight') ) {
			el.addClass( classname );
		}
		
		if ( !el.getParent('table').hasClass('no-highlight') ) {
			el.addEvent('mouseenter', function(e){
				el.addClass('hover');
			});
			el.addEvent('mouseleave', function(e){
				el.removeClass('hover');
			});
		}
	});

	$$('input[type=text],textarea,select').each( function(input,i){
		input.addEvent('focus', function(e){
			this.addClass('focused');
		});
		input.addEvent('blur', function(e){
			this.removeClass('focused');
		});
	});


	var callcenter_faqs_triggers = $$('.cmsfaq-trigger');
	var callcenter_faqs_panels = $$('.cmsfaq-panel');
	var callcenter_faqs_fx = Array();
	
	callcenter_faqs_triggers.each( function(el,i) {
		var thisFx = new Fx.Slide( callcenter_faqs_panels[i], { duration: 200 } ).hide();
		callcenter_faqs_fx[i] = thisFx;
		
		el.addEvent('click', function(e) {
			e.stop();
			
			if ( callcenter_faqs_fx[i].open ) {
				el.getParent().removeClass('cmsfaq-panel-active');
				callcenter_faqs_fx[i].slideOut();
			} else {
				el.getParent().addClass('cmsfaq-panel-active');
				callcenter_faqs_fx[i].slideIn();
			}
		});
	});


	if ( $defined($('cmsfaq-expandall')) ) {
		$('cmsfaq-expandall').addEvent('click', function(e){
			e.stop();
			
			callcenter_faqs_triggers.each( function(el,i) {
				if ( callcenter_faqs_fx[i].open ) {
					el.getParent().removeClass('cmsfaq-panel-active');
					callcenter_faqs_fx[i].slideOut();
				} else {
					callcenter_faqs_fx[i].slideIn();
				}
			});
		});
	}


	var callcenter_pricelists_triggers = $$('.callcenter-pricelists-trigger');
	var callcenter_pricelists_panels = $$('.callcenter-pricelists-panel');
	var callcenter_pricelists_fx = Array();
	
	callcenter_pricelists_triggers.each( function(el,i) {
		var thisFx = new Fx.Slide( callcenter_pricelists_panels[i], { duration: 350 } ).hide();
		callcenter_pricelists_fx[i] = thisFx;
		
		el.addEvent('click', function(e) {
			e.stop();
			el.toggleClass('active');
			callcenter_pricelists_fx[i].toggle();
		});
	});
	if ( $defined(callcenter_pricelists_triggers[0]) ) {
		callcenter_pricelists_triggers[0].addClass('active');
		callcenter_pricelists_fx[0].show();
	}



	var callcenter_promos_triggers = $$('.callcenter-promos-trigger');
	var callcenter_promos_panels = $$('.callcenter-promos-panel');
	var callcenter_promos_fx = Array();
	
	callcenter_promos_triggers.each( function(el,i) {
		var thisFx = new Fx.Slide( callcenter_promos_panels[i], { duration: 350 } ).hide();
		callcenter_promos_fx[i] = thisFx;
		
		el.addEvent('click', function(e) {
			e.stop();
			el.toggleClass('active');
			callcenter_promos_fx[i].toggle();
		});
	});
	
	
	var callcenter_zipcodes = $$('#zipcode-filter-results .zipcode');
	var zipcode_filter;
	var zipcode_classname;
	
	callcenter_zipcodes.each( function(el,i) {
		zipcode_classname = el.get('class');
		var regex_match = new RegExp("storage-pricelist-(.*) ");
		var storage_price_listid = zipcode_classname.match(regex_match);
		storage_price_listid = storage_price_listid[1];
		
		el.addEvents({
			'mouseenter' : function(e){
				$('storage-pricelist-'+storage_price_listid).setStyle('display', 'block');
				$('storage-pricelist-'+storage_price_listid).setStyle('top', e.page.y - 400);
			},
			'mouseleave' : function(e){
				$('storage-pricelist-'+storage_price_listid).setStyle('display', 'none');
			}
		});
	});
	
	if ( $defined( $('zipcode-filter') ) ) {
		$('zipcode-filter').addEvent('keyup', function(e) {
			zipcode_filter = this.get('value');
			zipcode_found = false;
			
			callcenter_zipcodes.each( function(el,i) {
				zipcode_classname = el.get('class');
				var regex_match = new RegExp("zipcode-" + zipcode_filter);
				
				if ( zipcode_classname.match(regex_match) ) {
					el.removeClass('hide');
					zipcode_found = true;
				} else {
					el.addClass('hide');
				}
			});
			
			if ( zipcode_found == false ) {
				$('zipcode-filter-noresults').setStyle('display', 'block');
			} else {
				$('zipcode-filter-noresults').setStyle('display', 'none');
			}
		});
	 }

});
