var jobNum = 1;

$(function() {
	$('div.employment-form:gt(0)').css({"height":0,"margin-bottom":0});
	
	$('input#id_phone').each(function(){
		if($.trim($(this).val()) == "" || $(this).val() == "xxx-xxx-xxxx") {
			$(this).val('xxx-xxx-xxxx').bind('focus', clearHelp).bind('click', clearHelp).css({'color': '#999999'});
		}
	});
	$('div.date input').each(function(){
		if($.trim($(this).val()) == "" || $(this).val() == "mm/dd/yyyy") {
			$(this).val('mm/dd/yyyy').bind('focus', clearHelp).bind('click', clearHelp).css({'color': '#999999'});
		}
	});
	$('input#id_home_value').each(function(){
		if($.trim($(this).val()) == "" || $(this).val() == "500000") {
			$(this).val('500000').bind('focus', clearHelp).bind('click', clearHelp).css({'color': '#999999'});
		}
	});
	$('#financial-info input').each(function(){
		$(this).bind('change',totalFinances).bind('keyup',totalFinances).bind('keydown',numberRestrict);
	});
	$('div.form-part:has("ul.errorlist")').addClass('errors');
	
	// Show added jobs
	$('div.employment-form:lt('+jobNum+')').css({"height":"390px","margin-bottom":"30px"});
	
	$("#terms-check a").click(function(){
		return false;
	});
	
	$("#terms-check a").mouseover(function(){
		$("#terms").css("visibility","visible");
	});
	
	$("#terms-check a").mouseout(function(){
		$("#terms").css("visibility","hidden");
	});
	
	$(".close-btn").each(
		function(intIndex){
			$(this).click(
				function()
				{
					removeJob(intIndex);
					return false;
				}
			);
		}
	);
});

function addJob(){
	if(jobNum <= 4){
		jobNum += 1;
		$('div.employment-form:eq(' + (jobNum-1) + ')').animate({"height":"390px","marginBottom":"30px"},500,"swing");
	}
	if(jobNum == 5){
		$('a#job-button').hide();
	}
}

function removeJob(index){
	if(jobNum > 1){
		$('a#job-button').show();
		jobNum -= 1;
		$('div.employment-form:eq(' + (index+1) + ')').animate({"height":0,"marginBottom":0},500,"swing",function(){
			for(i=(index+2);i<6;i++)
			{
				if(i<=jobNum)
				{
					$('div#employment-' + i ).css({"height":"390px","marginBottom":"30px"});
				}
				else
				{
					$('div#employment-' + i ).css({"height":"0px","marginBottom":"0px"});
				}
				
				
				if(i<5)
				{
					$('div#employment-' + i + ' :input').each(function(intIndex){
						if($('div#employment-'+(i+1)+' :input:eq('+intIndex+')' ).val())
						{
							$(this).val($('div#employment-'+(i+1)+' :input:eq('+intIndex+')' ).val());
						}
						else
						{
							$(this).val("");
						}
						
					});
				}
				else
				{
					$('div#employment-' + i + ' :input').each(function(){
						$(this).val("");
					});
				}
			}
		});
		
		
			
		
		
	}
	//alert(index+2);
}

function clearHelp(e){
	$(e.target).val('').unbind('focus', clearHelp).unbind('click', clearHelp).css({'color' : '#333333'});
}

function totalFinances(){
	var assets = 0;
	var liabilities = 0;
	
	if(Number($('#id_home_value').val()))
	{
		assets += Number($('#id_home_value').val());
	}
	
	if(Number($('#id_marketable_securities').val()))
	{
		assets += Number($('#id_marketable_securities').val());
	}
	
	if(Number($('#id_retirement_accounts').val()))
	{
		assets += Number($('#id_retirement_accounts').val());
	}
	
	if(Number($('#id_other_assets').val()))
	{
		assets += Number($('#id_other_assets').val());
	}
	
	if(Number($('#id_mortgage_balance').val()))
	{
		liabilities += Number($('#id_mortgage_balance').val());
	}
	
	if(Number($('#id_auto_loans_balance').val()))
	{
		liabilities += Number($('#id_auto_loans_balance').val());
	}
	
	if(Number($('#id_personal_loans_balance').val()))
	{
		liabilities += Number($('#id_personal_loans_balance').val());
	}
	
	if(Number($('#id_other_obligations').val()))
	{
		liabilities += Number($('#id_other_obligations').val());
	}
	
	$('#id_total_assets').val(assets);
	$('#total_assets').html("$"+assets);
	$('#id_total_liabilities').val(liabilities);
	$('#total_liabilities').html("$"+liabilities);
	$('#id_net_worth').val(assets - liabilities);
	$('#net_worth').html("$"+(assets - liabilities));
}

function numberRestrict(e)
{
	return (!e.shiftKey)&&(e.keyCode > 47 && e.keyCode < 58) || e.keyCode == 8 || 
		(e.keyCode > 36 && e.keyCode < 41) || e.keyCode == 46 ||
		(e.keyCode > 95 && e.keyCode < 106 || e.keyCode == 9);
}