$(document).ready(function(){
	
	$('.taxFinanceCalculator').bind('click', function(e) {
		e.preventDefault();
		$('.overlay').show();
		$('#taxfinancecalculatorContainer').show();
		$('#taxfinancecalculator').show();
		$('body').css('overflow','hidden');	
		$('#inside_flash').hide();
		clearTaxFinanceCalculator();
	});
	
	var blnShowEmptyCalculatorByDefault = parseInt($('#blnShowEmptyCalculatorByDefault').size());
	
	if (blnShowEmptyCalculatorByDefault) {
		$('.overlay').show();
		$('#taxfinancecalculatorContainer').show();
		$('#taxfinancecalculator').show();
		$('body').css('overflow','hidden');	
		$('#inside_flash').hide();
		clearTaxFinanceCalculator();
	}
	
	$('.tax_finance_btn_next_step').bind('click', function(e) {
		e.preventDefault();
		calculateFees();
	});
	
	$('#linkCloseFinanceEmailContainer').bind('click', function(e) {
		e.preventDefault();
		$('#taxFinanceCalculatorErrorMessage').hide();
		$('#email_tax_finance_form').hide();
	})
	
	$('#submitFinanceEmailRequest').bind('click', function(e) {
		e.preventDefault();
		$('#taxFinanceCalculatorErrorMessage').hide();
		//check email 
		var chrEmailAddress = $('#taxFinanceEmail').val();
		var financeFeesContent = $.Replace($('#calc_tax_finance #results').html(),'%',' percent','all');
		if (emailCheck(chrEmailAddress)) {
			$('#email_tax_finance_form').hide();
			chrQS = '&financeFeesContent=' + financeFeesContent;
			chrQS = chrQS + '&email=' + chrEmailAddress;
			doAjaxCall({
				fuseAction:'emailPublicTaxFinanceRequest',
				blnSupressQ:false,
				callBack:'confirmEmailPublicTaxFinanceRequest',
				data:chrQS
				});
		} else {
			chrErrorMessage = "Please enter a valid email address";
			$('#taxFinanceCalculatorErrorMessage .taxCalculatorErrorMessage').text(chrErrorMessage);
			$('#taxFinanceCalculatorErrorMessage').show();
		}
		
	});
	
	$('#btnEmailFinanceOutput').bind('click', function(e) {
		e.preventDefault();
		$('#email_tax_finance_form').show();
		$('#taxFinanceEmail').val('');
		$('#taxFinanceEmail').focus();
	});
	
	$('.tax_finance_btn_register').bind('click', function(e) {
		e.preventDefault();
		var requestAmount = $('#taxFinanceRequestAmount').val();
		var maturityDateVals = $('#taxFinanceRequestMonths').val();
		var maturityDate = $.ListGetAt(maturityDateVals,1,"|");	
		$('#taxFinanceRequestAmountHidden').val(requestAmount);
		$('#taxFinanceMaturityDateHidden').val(maturityDate);
		var chrRegistrationAction = $('#chrRegistrationAction').text();
		$('#calc_tax_finance').attr('action',chrRegistrationAction);		
		modalTimerFormSubmit('#calc_tax_finance',2000);
	});
	
	$('.tax_finance_btn_back').bind('click', function(e) {
		e.preventDefault();
		clearTaxFinanceCalculatorRetainValues();
	});
	
	$('.tax_finance_btn_login_to_purchase').bind('click', function(e) {
		e.preventDefault();
		$('#calc_tax_finance #results').hide();
		$('#taxfinancecalculator .loginRegisterPanel').hide();
		$('#taxfinancecalculator .loginPanel').show();
		$('#taxFinanceCalculatorErrorMessage').hide();
		$('#email_tax_finance_form').hide();
		$('#login_tax_finance_form').show();
		$('.tax_finance_btn_login_to_purchase2').bind('click', function(e) {
			e.preventDefault();
			var chrUsername = $('#taxFinanceUsername').val();
			var chrPassword = $('#taxFinancePassword').val();
			doAjaxCall({fuseAction:'doPreLoginTest',blnSupressQ:false,callBack:'showTaxFinanceLoginResult',data:{'username':chrUsername,'password':chrPassword}});	
		});
		$('taxFinanceUsername').focus()
	});
	
	$('#taxFinancePassword').keyup(function(e) {
		if(e.keyCode == 13) {
			e.preventDefault();
			var chrUsername = $('#taxFinanceUsername').val();
			var chrPassword = $('#taxFinancePassword').val();
			doAjaxCall({fuseAction:'doPreLoginTest',blnSupressQ:false,callBack:'showTaxFinanceLoginResult',data:{'username':chrUsername,'password':chrPassword}});	
		}
	});
	

});

function confirmEmailPublicTaxFinanceRequest() {
	$.timeout(function() { $('#financeEmailRequestConfirmation').fadeIn('slow',function() {$.timeout(function() { $('#financeEmailRequestConfirmation').fadeOut('slow')}, 3000);}); }, 500);
}

function clearTaxFinanceCalculator() { 
	$('div.error').hide();
	$('#taxFinanceCalculatorErrorMessage').hide();
	$('#email_tax_finance_form').hide();
	$('#taxFinanceRequestAmount').val('');
	$('#taxFinanceRequestMonths').val('');
	$('#taxFinanceUsername').val('');
	$('#taxFinancePassword').val('');
	$('.financeFeesForm').show();
	$('#login_tax_finance_form').hide();
	$('#calc_tax_finance #results').hide();
	$('#taxfinancecalculator .submitPanel').show();
	$('#taxfinancecalculator .loginRegisterPanel').hide();
	$('#taxfinancecalculator .loginPanel').hide();
	$('#taxFinanceRequestAmount').focus();
}

function clearTaxFinanceCalculatorRetainValues() { 
	$('div.error').hide();
	$('#taxFinanceUsername').val('');
	$('#taxFinancePassword').val('');
	$('.financeFeesForm').show();
	$('#login_tax_finance_form').hide();
	$('#calc_tax_finance #results').hide();
	$('#taxfinancecalculator .submitPanel').show();
	$('#taxfinancecalculator .loginRegisterPanel').hide();
	$('#taxfinancecalculator .loginPanel').hide();
	$('#taxFinanceRequestAmount').focus();
}


function calculateFees() {
	$('div.error').hide();
	//$('#feeValue').hide();
	var blnError = false;
	var requestAmount = $('#taxFinanceRequestAmount').val();
	var maturityDateVals  = $('#taxFinanceRequestMonths').val();
	var maturityDate = $.ListGetAt(maturityDateVals,1,"|");
	var lenderMaturityDate = $.ListGetAt(maturityDateVals,2,"|");
	var depositDate = $('#taxFinanceProvisionalTaxDateHidden').val();
	if (!$.Len(requestAmount) || requestAmount < 5000) {
		var blnError = true;
		chrErrorMessage = "Please enter an amount of $5000 or more.";
	}
	if (blnError) {
		$('#taxFinanceCalculatorErrorMessage .taxCalculatorErrorMessage').text(chrErrorMessage);
		$('#taxFinanceCalculatorErrorMessage').show();
	} else {
		doAjaxCall({fuseAction:'getTaxFinanceFeeForTaxDeposit',blnSupressQ:false,callBack:'getTaxFinanceFeeForTaxDeposit',data:{'requestAmount':requestAmount,'depositDate':depositDate,'maturityDate':maturityDate,'lenderMaturityDate':lenderMaturityDate}});
	}
}

function getTaxFinanceFeeForTaxDeposit(obj) {
	var objWeightedRates = obj.parseJSON();
	numFee = objWeightedRates.numFee;
	numClientRate = objWeightedRates.numClientRate;
	var requestAmount = $('#taxFinanceRequestAmount').val();
	var maturityDateVals = $('#taxFinanceRequestMonths').val();
	var maturityDate = $.ListGetAt(maturityDateVals,1,"|");	
	var provisionalTaxDate = $('#tax_date').val();
	//chrMessage = '<p class="large">To finance <strong>' + $.DollarFormat(requestAmount) + '</strong> Tax to <strong>' + maturityDate + '</strong> - The Tax FINANCE Fee is <strong>' + $.DollarFormat(numFee) + '</strong>. This fee equates to <strong>' + numClientRate + '%.</strong></p>';
	chrMessage = '<p class="large">To finance your <strong>' + getVisualDateFormat(provisionalTaxDate) +  '</strong> Provisional Tax payment of <strong>' + $.DollarFormat(requestAmount) + '</strong> until <br><strong>' + getVisualDateFormat(maturityDate) + ' </strong> will cost <strong>' + $.DollarFormat(numFee) + '</strong>. This fee equates to <strong>' + numClientRate + '%.</strong></p>';
	$('#calc_tax_finance #results').html(chrMessage);
	$('.financeFeesForm').hide();
	$('#calc_tax_finance #results').show();
	$('#taxfinancecalculator .submitPanel').hide();
	$('#taxfinancecalculator .loginRegisterPanel').show();
	
}

function showTaxFinanceLoginResult(blnOK) {
	if(blnOK == "false") {
		var chrErrorMessage = "The details that you entered are incorrect, please try again";
		$('#taxFinanceCalculatorErrorMessage .taxCalculatorErrorMessage').text(chrErrorMessage);
		$('#taxFinanceCalculatorErrorMessage').show();
	} else {
		var requestAmount = $('#taxFinanceRequestAmount').val();
		var maturityDateVals = $('#taxFinanceRequestMonths').val();
		var maturityDate = $.ListGetAt(maturityDateVals,1,"|");	
		$('#taxFinanceRequestAmountHidden').val(requestAmount);
		$('#taxFinanceMaturityDateHidden').val(maturityDate);
		modalTimerFormSubmit('#calc_tax_finance',2000);
	}
}
