$(document).ready(function(){

	init(); 
});

function init() {
	
	if ($('a.zoom').length > 0) {
		var path =  '../wp-content/themes/hogs/images/zoom';
		if (window.location.href.indexOf('#') > 0) {
			path = '/../'+path;
		}
		$('a.zoom').fancyZoom({closeOnClick:true, directory:window.location + path});
	}

    
	if ($('.home').length > 0) {
		//createDonationBar(20000,20000);
		$('#donation_ticker').jCarouselLite({
	        visible:1,
	        easing: 'easeOutExpo',
	        auto:3000,
	        speed:2000
	        
	    });
	}

	if ($('.cookoff').length > 0) {
		initializeGMaps();
		//createModalSignupForm();
		
		$('#signup_link').click(showSignUpForm);
		$('#cookoff_rules_link').click(showCookoffRules);
		$('#signup_submit_button').click(submitCookoffContestant);
	}
	
	if ($('.feedback-link').length > 0) {
		$('.feedback-link').click(showFeedbackForm);
		$('#submit_feedback_button').click(submitFeedback);
	}
	 $("ul.menu a").hover(doMenuHover, doMenuHoverExit);
}

function createDonationBar(amt,goal) {
	console.log('Creating Donation Bar');
	var imageDir = window.location + 'wp-content/themes/hogs/images/therm/';
	var startImg = '<img src="' + imageDir + 'left_end.png"/>';
	var orangeFiller = '<img src="' + imageDir + 'orange_filler.png"/>';
	var greenFiller = '<img src="' + imageDir + 'green_filler.png"/>';
	var orangeEnd = '<img src="' + imageDir + 'orange_end.png"/>';
	var endImg = '<img src="' + imageDir + 'right_end.png"/>';
	var progressBar = $('#progress_bar');
	$('#donation_amt').append('$' + amt + '.00');
	// Each filler strip = $250
	progressBar.append(startImg);
	var totalThermWidth = progressBar.innerWidth(); //Number of pixels available.
	var fillerStripWidth=5; //width of one filler strip.
	var totalStrips = Math.round((totalThermWidth-20)/fillerStripWidth); //Number of filler strips (not end strips
	var fillerStripWorth = Math.round(goal / totalStrips);
	var orangeStrips = Math.round(amt / fillerStripWorth);
	if (amt >= goal) {
		endImg = '<img src="' + imageDir + 'red_right_end.png"/>';
		orangeStrips--;
	}
	for (i = 0; i < orangeStrips; i++) {
		progressBar.append(orangeFiller);
	}
	if (amt < goal) {
		progressBar.append(orangeEnd);
	}

	var greenStrips = totalStrips - orangeStrips-1;
	for (i = 0; i < greenStrips; i++) {
		progressBar.append(greenFiller);
	}

	progressBar.append(endImg);

}

/**
 * Uses the new V3 maps api.
 * @return
 */
function initializeGMaps() {
	
	var mapCenter =  new google.maps.LatLng(29.924397, -90.130533);
	var cookoffSpot = new google.maps.LatLng(29.921463, -90.134417);
	    var myOptions = {
	      zoom: 15,
	      center: mapCenter,
	      mapTypeId: google.maps.MapTypeId.ROADMAP
	    };
	    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

	    var marker = new google.maps.Marker({
	        position: cookoffSpot
	        
	    });
	    	    
	    
	    // To add the marker to the map, call setMap();
	    marker.setMap(map);
	    
	    
	    var contentString = '<b>Hogs for the Cause</b>'
		+ '<br/>Audubon Butterfly' + '<br/>Saturday, March 26, 2011'
		+ '<br/>Sun Up to Sun Down' + '<br/>On the left as you enter, '
		+ 'across from the river.';
		
	var infowindow = new google.maps.InfoWindow({
	    content: contentString
	});
	infowindow.open(map,marker);
}

/* Called when hovering over menu item. */
function doMenuHover(event) {
	$(this).addClass("menu_hover");
}

function doMenuHoverExit(event) {
	$(this).removeClass("menu_hover");
}

function showFeedbackForm(e) {
	enableFormFields($('#feedback_form')[0]);
	e.preventDefault();
	$('#feedback_container').modal({
		overlayClose:true,
		containerId:'feedback_container',
		dataId: 'feedback_container',
		closeHTML: '<div class="close"><a href="#" class="simplemodal-close">x</a></div>',
		minHeight:80,
		opacity:65, 
		position:['0',],
		onClose:modalClose,
		onOpen:function (dialog) {
			dialog.overlay.fadeIn('fast', function () {
				dialog.container.slideDown('fast', function () {
					dialog.data.fadeIn('fast');
				});
			});
		}
		
	});
}

/**
 * Displays modal dialog with signup form.
 */
function showSignUpForm (e) {
	//enableFormFields($('#signup_form')[0]);
	if (e)
		e.preventDefault();
	$('#cookoff_signup').modal({
		overlayClose:true,
		containerId:'cookoff_signup',
		dataId: 'cookoff_signup',
		closeHTML: '<div class="close"><a href="#" class="simplemodal-close">x</a></div>',
		minHeight:80,
		opacity:65, 
		position:['0',],
		onClose:modalClose,
		onOpen:function (dialog) {
			dialog.overlay.fadeIn('normal', function () {
				dialog.container.slideDown('normal', function () {
					dialog.data.fadeIn('normal');
				});
			});
		}
		
	});
		
	
}

function showCookoffRules(e) {
	e.preventDefault();
	
	$('#cookoff_rules').modal({
		overlayClose:true,
		closeHTML: '<div class="close"><a href="#" class="simplemodal-close">x</a></div>',
		dataId: 'rules_list',
		containerId:'cookoff_rules',
		minHeight:80,
		opacity:65, 
		position:['0',],
		onClose:modalClose,
		onOpen:function (dialog) {
			dialog.overlay.fadeIn('normal', function () {
				dialog.container.slideDown('normal', function () {
					dialog.data.fadeIn('normal');
				});
			});
		}
		
	});
}

function modalOpen(d) {

	var self = this;
	self.container = d.container[0];
	d.overlay.fadeIn('slow', function () {
		$(".simplemodal-data", self.container).show();
		var title = $("#simplemodal-title", self.container);
		title.show();
		d.container.slideDown('slow', function () {
			setTimeout(function () {
				var h = $("#simplemodal-data", self.container).height()
					+ title.height()
					+ 20; // padding
				d.container.animate(
					{height: h}, 
					200,
					function () {
						$("div.close", self.container).show();
						$("#simplemodal-data", self.container).show();
					}
				);
			}, 300);
		});
	});

}

function modalClose(d) {

	var self = this;
	d.container.animate(
		{top:"-" + (d.container.height() + 20)},
		500,
		function () {
			self.close(); // or $.modal.close();
		}
	);

}

/**
 * Called when feedback form is submitted.
 */
function submitFeedback() { 
	//console.log($('#feedback_form').serialize());
	$('.simplemodal-data .busy').show();
	var formData = $('form#feedback_form').serialize();
	console.log(formData);
	disableFormFields($('.simplemodal-data form')[0]);
	$.ajax({
		   type: 	'POST',
		   url: 	window.location + '../wp-admin/admin-ajax.php',
		   data:  	formData+'&action=feedback',
		   dataType:'json',
		   success: function(resp) {
				modalRequestSuccess(resp)
			},
		   error: function () {
				modalRequestError(req,txt);
			}
	});
	return false;
}

function disableFormFields(form) {
	for (var i = 0; i < form.elements.length; i++) { 
		form.elements[i].disabled = true;
	}
}

function enableFormFields(form) {
	for (var i = 0; i < form.elements.length; i++) { 
		form.elements[i].disabled = false;
	}
}

/**
 * Called when coockoff signup form submitted.
 * @return
 */
function submitCookoffContestant() {
	//console.log($('#signup_form').serialize()),
	 $('.simplemodal-data .busy').show();
	var formData = $('form#signup_form').serialize();
	disableFormFields($('.simplemodal-data form')[0]);
	 $.ajax({
		   type: 	'POST',
		   url: 	window.location + '../wp-admin/admin-ajax.php',
		   data:  	formData+'&action=cookoff_signup',
		   dataType:'json',
		   success: function(resp) {
				modalRequestSuccess(resp)
			},
		   error: function (req,txt) {
				modalRequestError(req,txt);
			}
		 });
	return false;
}
function modalRequestSuccess(resp) {
	var successDiv = $('.simplemodal-data .submit_success');
	var errorDiv = $('.simplemodal-data .submit_error');
	var busyIndicator = $('.simplemodal-data .busy');	
	$('.simplemodal-data form').hide();
	var elemHeight = successDiv.offset().top + successDiv.outerHeight();
		if (resp.status == 'success') {
		 		busyIndicator.hide();
		 		successDiv.show();
		 		
		 	}
		 	else { 
		 		busyIndicator.hide();		 		 		
		 		errorDiv.show();
		 		elemHeight = errorDiv.offset().top + errorDiv.outerHeight();
		 	}
		$('.simplemodal-container').animate({height:elemHeight+35},500,'swing');
	
}


function modalRequestError(req, errortxt) {
	$('#busy_indicator').hide();		 		 		
	$('#submit_error').show();
	$('#cookoff_signup').animate({height:$('#submit_error').offset().top + $('#submit_error').outerHeight()+100},250,'swing');
}

	