var numPics, picWidth, strPicContainer;
var workPos 		= 0;
var currentWorkPos 	= 0;
var autoPlay		= true;
var delayTime		= 8000;
var speedHome		= 500;
var idSelTab		= null;
var objCal;
var objCal2;
var objMecPHPPlugin;
var objMecPHPPlugin2;
var aryImages		= ['site.tannerfoust.com/images/bg_home_press.jpg','site.tannerfoust.com/images/bg_home_tanner.jpg', 'site.tannerfoust.com/images/bg_home_tracker.jpg', 'site.tannerfoust.com/images/bg_home_media.jpg', 'site.tannerfoust.com/images/bg_home_calendar.jpg', 'site.tannerfoust.com/images/bg_home_vehicles.jpg'];
var fit;


window.addEvent('domready', function() {
	
	registerCalendar();
	registerHomeContainer();
	registerFooterDrawers();
	registerBio();
	registerOverText();
	registerVehicleDot();
	registerMediaEvents();
	registerContactForm();
});


function registerContactForm() {
	
	window.addEvent('domready', function() {
	
		$$('.gallery_thumb').each( function( el ) {
			
			el.set( 'opacity', '.5' );	
		
			el.addEvent( 'mouseenter', function() {
				el.fade( '1' );													   
			});
			
			el.addEvent( 'mouseleave', function() {
				el.fade( '.5' );										   
			});
		});
	
		
	});
}


function registerMediaEvents() {
	
	window.addEvent('domready', function() {
	
		if( $defined( $('frmContact') ) ) {
			
			$('type').addEvent( 'change', function() {
				
				switch( $('type').value ) {
					
					case 'Sponsorship':
						email = 'pr@galeandco.com';
						break;
					
					case 'Media/PR':
						email = 'pr@galeandco.com';
						break;
					
					case 'Fanmail':
						email = 'pr@galeandco.com';
						break;
					
					default:
						email = 'pr@galeandco.com';
						break;
				}
				
				$('config_email_to').set( 'value', email ); 
													   
			});			
		}
		
	});
}


function registerOverText() {
	
	$$('.has_over_text').each( function( el ) {
		
		new OverText( el );
	});
}

function setVehicleDotText( el ) {
		
	if( $defined( $('xPos') ) ) {
		$('xPos').set('value', el.getCoordinates( el.getParent() ).left );
		$('yPos').set('value', el.getCoordinates( el.getParent() ).top );
		$('dot_name').set('html', el.retrieve('tip:title') );
	}
}


function registerVehicleDot() {
	
	$$('.vehicle_dot').each( function( el ) {
		
		el.store('tip:title', el.getProperty('title') ).store('tip:text', el.get('html') );
		
		if( $defined( $('xPos') ) ) {
		
			var drag = new Drag( el, {
				
				onComplete: function(el){
					setVehicleDotText( el );
				}
			});
			
			el.addEvent( 'click', setVehicleDotText.pass( el ) );
		}
		
		var tip = new Tips(el, {
			className: 'vehicle_tip',
			fixed: true,
			offset: {x:-105,y:0},
			onShow: function(tip){
				tip.fade( .8 );
				tip.setStyle( 'top', ( el.getPosition().y - tip.getSize().y ) + 'px'  );
				//tip.setStyle('opacity', '0.9');
			},
			onHide : function(tip){
				tip.fade( 'hide' );
			}
		});
		tip.tip.fade('hide');
		//alert( el.getProperty('id') );
	});
}


function registerCalendar() {
	//uri = new URI( window.location.href );
	//alert( CAL_DATE );
	if( $defined( $('cal2') ) ) {
		objMecPHPPlugin2 = new mecPHPPlugin();
		
		objCal2 = new Calendar({  
			calContainer:'cal2',  
			newDate:CAL_DATE,  
			view:'month',  
			feedPlugin:objMecPHPPlugin2
		}); 
	}
}


function registerFooterDrawers() {
	
	if( $defined( $('footer_drawers') ) ) {
		
		registerDrawer( 'footer_drawer_1', 'footer_drawer_top_1' );
		registerDrawer( 'footer_drawer_3', 'footer_drawer_top_3' );
		
	
		if( $defined( $('cal') ) && !$defined( $('cal2') ) ) {
			
			registerDrawer( 'footer_drawer_2', 'footer_drawer_top_2' );
			
			objMecPHPPlugin = new mecPHPPlugin();
			
			objCal = new Calendar({  
				calContainer:'cal',  
				//newDate:'1/25/2009',  
				view:'month',  
				feedPlugin:objMecPHPPlugin
			}); 
		}
		else {
			
			//$('footer_drawer_top_2').setStyle( 'cursor', 'auto' );
			
			$('footer_drawer_top_2').addEvent( 'mouseenter', function() {
																
				//$('cal2').setStyle( 'border-color', '#454444' );	
			});
			
			$('footer_drawer_top_2').addEvent( 'mouseleave', function() {
																
				//$('cal2').setStyle( 'border-color', 'transparent' );	
			});
		}
	}
}


function registerHomeContainer() {
	
	if( $defined( $('home_container') ) ) {
		
		$('home_arrow_left').addEvent( 'click', showWorkPrev );
		$('home_arrow_right').addEvent( 'click', showWorkNext );
		
		numPics 		= $$('.home_content').length;
		picWidth		= 1000;
		strPicContainer	= "home_container_inner";
		$( 'home_content_' + currentWorkPos ).setStyle( 'top', '0' );
		fit = new FitImage( aryImages[0] );
		nextWork.delay( delayTime );
	}
}


function registerBio() {
	
	var toggle, title, content;
	
	$$('.bio_section').each( function( el ) {
		
		toggle 		= el.getChildren()[0];
		title 		= el.getChildren()[1];
		content		= el.getChildren()[2];	
		
		content.set('slide', {duration: '250', transition: 'quad:out'});
		content.slide( 'hide' );
		
		toggle.addEvent( 'click', function( toggle, content ) {
			
			content.slide( 'toggle' );
			el.toggleClass( 'bio_section_on' );
												   
		}.pass( [ toggle, content ] ) );				   
	});
}


function registerDrawer( id, idToggle ) {
	
	//var baseline = 85;
	//var endpoint = '-159px';
	var baseline = 12;
	var endpoint = '-240px';
	
	$(idToggle).addEvent( 'click', function() {
															
		//var end = ( !$(id).getStyle( 'top' ).toInt() ) ? endpoint : '0';
		var end = ( $(id).getStyle( 'top' ).toInt() == baseline ) ? endpoint : baseline + 'px';
		var bg  = ( $(id).getStyle( 'top' ).toInt() != baseline ) ? 'site.tannerfoust.com/images/arrow_yellow_up.png' : 'site.tannerfoust.com/images/arrow_yellow_down.png';
		var myFx = new Fx.Tween( $(id), {transition:'quad:out', duration:200} );
		//alert($(id).getStyle( 'top' ).toInt());
		myFx.start( 'top', end );
		$(idToggle).setStyle( 'background-image', 'url(' + bg + ')' );	
	});
}


function nextWork() {

	if( autoPlay ) {
		currentWorkPos = workPos;	
		workPos++;
		
		if( workPos >= numPics )
			workPos = 0;
			
		//setThumbs( currentWorkPos, workPos );			
		showWork( currentWorkPos, workPos );
	}
}


function setThumbs( i, next ) {
	
	if( $defined( $('project_thumb_' + i) ) ) {
		$('project_thumb_' + i).removeClass('selected');
		$('project_thumb_' + next).addClass('selected');
	}
}


function showWork( i, next ) {

	$( 'home_content_' + i ).set('tween', {duration: speedHome, transition:'quad:in:out', onComplete: function(){
			
			$( 'home_content_' + i ).set('tween', {onComplete: null});
				
			document.body.setStyle( 'background', '#000 url(site.tannerfoust.com/images/mediabox/BlackLoading.gif) no-repeat center center' );
			fit.setImage( 'none' );
			
			$( 'home_content_' + next ).set('tween', {duration: speedHome, transition:'quad:in:out', onComplete: function(){
			
				var myImage = Asset.image(aryImages[next], {
					id: 'myImage',
					title: 'myImage',
					onload: function() { 
						//document.body.setStyle( 'background-image', 'none' );	
						fit.setImage( this.src );
						/*document.body.setStyle( 'background', '#000 url(' + this.src + ') no-repeat top center' );*/ 
					}
				});
				
					$( 'home_content_' + next ).set('tween', {onComplete: null});
					nextWork.delay( delayTime );	
				}
			});
			$( 'home_content_' + next ).tween( 'opacity', '1' );
			$( 'home_content_' + next ).tween( 'top', '0' );
		}
	});
	
	$( 'home_content_' + i ).tween( 'opacity', '0' );
	$( 'home_content_' + i ).tween( 'top', '800px' );
	
}	

function loadBG( id ) {
	
	alert( $(id) );
}

function showWorkClick( i ) {
	
	autoPlay = false;
	setThumbs( workPos, i );	
	showWork( workPos, i );
	workPos = i;
}


function showWorkPrev() {
	
	autoPlay 		= false;
	currentWorkPos 	= workPos;	
	workPos--;
	
	if( workPos < 0 )
		workPos = numPics-1;
		
	setThumbs( currentWorkPos, workPos );			
	showWork( currentWorkPos, workPos );
	
	return false;
}


function showWorkNext() {
	
	autoPlay 		= false;	
	currentWorkPos 	= workPos;	
	workPos++;
	
	if( workPos >= numPics )
		workPos = 0;
	
	setThumbs( currentWorkPos, workPos );			
	showWork( currentWorkPos, workPos );
	
	return false;
}

function zeroPad( num, count ) {
	var numZeropad = num + '';
	while(numZeropad.length < count) {
		numZeropad = "0" + numZeropad;
	}
	return numZeropad;
}

