jQuery(function(){
	
	// sticky footer
	setFooter();
	// bind footer to window resizing
	$(window).resize(function(){
		setFooter();
	});
	
	// if chunk changes, change story
	$('#chunk').change(function(){
		if (this.value == 'days')
		{
			$('#line3').fadeIn();
		}
		else
		{
			$('#line3').fadeOut();
		}
	});
	
	// pre submit
	$('#compute').click(function(){
		getSchedule();
	});
	
	// show days_by if days is chosen
	if ($('#chunk').val() == 'days') 
		$('#line3').fadeIn();
	
	// enable datepicker
	$('#offsetDate').datepicker();
	
	// enable fancyzoom for help boxes
	$('.help_link').fancyZoom({ width:400, height:300 });
});


// compute schedule
function getSchedule()
{
	// check if schedule is ready for submssion
	if (checkSchedule())
	{
		$('#scheduleForm').submit();
	}
	else
	{
		alert('Please double check your settings.')
	}
}

// check if schedule is ready for submission
function checkSchedule()
{
	var submit = true;
	var length = $('#chunk_length').val();
		
	if ( ! $('#schedule').val()) submit = false;
	if ( ! $('#chunk').val()) submit = false;
	if ((length == 0) || ( ! isNumber(length))) submit = false;
	
	if ($('#days_by').is(':visible'))
	{
		if ( ! $('#days_by').val()) submit = false;
	}
		
	return submit;
}

function isNumber(n) 
{
	return !isNaN(parseFloat(n)) && isFinite(n);
}

function setFooter()
{
	$('#footer').css({ top: function() {
			l = 600;
			h = ($(window).height() > l) ? ($(window).height()) : l;
			
			return h - $('#footer').outerHeight();
	}, left: 0, display: 'inline' });
}
