Cufon.replace('h1, h3, h2, ul.tabs li a span.title, .priceplan .price .save, .priceplan .price .amount, #lns span.title, span.call-us-on, .tabs-inner li a span.title');

Cufon.replace('#mainNav a',{
			  separate: 'none'
			  });


$(document).ready(function(){

	
$("#headerNav li:last").addClass("last");



$(".line1").animate({"left": "+=50px"}, "slow");
$(".line2").animate({"left": "+=150px"}, "slow");
$(".line3").animate({ "left": "+=170px" }, "slow");
$(".line4").animate({"left": "+=170px"}, "slow");
$(".line5").animate({"left": "+=216px"}, "slow");
  




$.validator.addMethod("lettersonly", function(value, element) {
  return this.optional(element) || /[^0-9]+$/i.test(value);
}, "This field can only contain letters"); 

$.validator.addMethod("ddmmyy", function(value, element) {
  return this.optional(element) || /^(?=\d)(?:(?!(?:(?:0?[5-9]|1[0-4])(?:\||\/)10(?:\||\/)(?:1582))|(?:(?:0?[3-9]|1[0-3])(?:\||\/)0?9(?:\.||\/)(?:1752)))(31(?!(?:\||\/)(?:0?[2469]|11))|30(?!(?:\||\/)0?2)|(?:29(?:(?!(?:\||\/)0?2(?:\||\/))|(?=\D0?2\D(?:(?!000[04]|(?:(?:1[^0-6]|[2468][^048]|[3579][^26])00))(?:(?:(?:\d\d)(?:[02468][048]|[13579][26])(?!\x20BC))|(?:00(?:42|3[0369]|2[147]|1[258]|09)\x20BC))))))|2[0-8]|1\d|0?[1-9])([\/])(1[012]|(?:0?[1-9]))\2((?=(?:00(?:4[0-5]|[0-3]?\d)\x20BC)|(?:\d{4}(?:$|(?=\x20\d)\x20)))\d{4}(?:\x20BC)?)(?:$|(?=\x20\d)\x20))?((?:(?:0?[1-9]|1[012])(?::[0-5]\d){0,2}(?:\x20[aApP][mM]))|(?:[01]\d|2[0-3])(?::[0-5]\d){1,2})?$/i.test(value);
}, "Please enter a valid date"); 


$.validator.addMethod( 
	  "selectNone", 
	  function(value, element) { 
	    if (element.value === "") 
	    { 
	      return false; 
	    } 
	    else return true; 
	  }, 
	  "Please select an option." 
); 




$.validator.addMethod('over18', function(value, element) {
		var dob = $("#dob").val();
		var day = dob.substr(0,2);
		var month = dob.substr(3,2);
		var year = dob.substr(6,4);
		var age = 18;
		var mydate = new Date();
		mydate.setFullYear(year, month-1, day);
		var currdate = new Date();
		currdate.setFullYear(currdate.getFullYear() - age);
		return (currdate - mydate < 0 ? false : true);
		}, 
			  "Please enter a valid date, you must be at least 18 years or over " 
); 


$("#step1Form").validate({
		rules: {
			firstname: {
				required: true,
				lettersonly: true,
				maxlength: 40,
				minlength: 2
			},
			surname: {
				required: true,
				lettersonly: true,
				maxlength: 40,
				minlength: 2
			},
			dob:  {
				required: true,
				minlength: 10,
				maxlength: 10,
				ddmmyy: true,
				over18: true
				},
			email1: {
				required: true,
				email: true,
				maxlength: 40
			},
			email2: {
				required: true,
				email: true,
				equalTo: '#email1'
			},
			emailConfirm: {
				required: true
			},	
			phone: {
				required: true,
				number: true,
				minlength: 7,
				maxlength: 20
			},
			phoneConfirm: {
				required: true,
				number: true,
				equalTo: '#phone',
				minlength: 7,
				maxlength: 20
			}	
        },
	     messages: {
			"firstname": {
    			required: "Your first name is required",
    			lettersonly: "Your first name can only contain letters"
   			},
			"surname":{
				required: "Please enter your surname",
    			lettersonly: "Your surname can only contain letters"	
			},
			"dob" :{
				required:"Your date of birth is required",
				ddmmyy: "Please enter your date of birth in the following format dd/mm/yyyy",
				minlength: "Please enter your date of birth in the following format dd/mm/yyyy",
				maxlength: "Please enter your date of birth in the following format dd/mm/yyyy",
				over18: "Please enter a valid date, you must be at least 18 years or over"
			},
			"email1": {
				required: "Your email address is required",
				email: "A valid email address is required"
				
			},
			"email2": { 
			required: "You must re-enter your email address",
			email: "A valid email address is required",
			equalTo: "Your email address does not match the one above"
			},
			"emailConfirm": { 
			required: "You must confirm that this is your email address"
			},
			"phone": {
				required: "Please enter a valid phone number",
				number: "Your phone number must contain numbers only",
				minlength: "Please enter a valid phone number including the area code without any spaces"
						
			},
			"phoneConfirm": {
				required: "Please re-enter your phone number",
				number: "Your phone number must contain numbers only",
				equalTo: "Your phone number does not match the one above",
				minlength: "Your phone number does not match the one above"
			}
		}	
	});


$.validator.addMethod("accountNumber", function(value, element) {
  return this.optional(element) || /^9[0-9]+$/i.test(value);
}, "Please enter 9 digits starting with the number 9"); 

$.validator.addMethod("beginsWith", function(value, element) {
  return this.optional(element) || /^10[0-9]+$/i.test(value);
}, "Your MPRN (Meter Point Reference Number) is an 11 digit number beginning with 10"); 

$.validator.addMethod("mprnisusable", function(value, element){
	return this.optional(element) || checkMPRNusable(value);
	}, "We are having trouble locating your MPRN please contact us on 1850 30 50 90 to proceed, thank you.");

//STEP 2 ADDITIONAL SCRIPTS END

$("#step2Form").validate({
	ignore: ".ignore", 					 
	rules: {	
	mprn: {required: true, number: true, minlength: 11, maxlength: 11, beginsWith:true,mprnisusable:true},
	billingRadio: {required:true},
	"irishStdBillingAddress.houseNo": {maxlength:10},
	"irishStdBillingAddress.aptNo":{maxlength:10},
	"irishStdBillingAddress.buildingName" :{maxlength:40},
	"irishStdBillingAddress.street": {required: true, maxlength:60},
	"prevSupplyAddress.houseNo": {maxlength:10},
	"prevSupplyAddress.aptNo":{maxlength:10},
	"prevSupplyAddress.buildingName" :{maxlength:40},
	"prevSupplyAddress.street": {required: true, maxlength:60},
	"internationalBillingAddress.house": {required: true, maxlength:40},
	"internationalBillingAddress.street1": {required: true, maxlength:60},
	"internationalBillingAddress.street2": {maxlength:60},
	"internationalBillingAddress.city": {required: true, maxlength:40},
	"internationalBillingAddress.countyState": {maxlength:40},
	"internationalBillingAddress.countryCode": {required: true, selectNone: true},
	"poBoxBillingAddress.poBoxNumber": {required: true, maxlength:10},
	"poBoxBillingAddress.postCode": {required: true, maxlength:10},
	"poBoxBillingAddress.countyState": {required: true, maxlength:40},
	"poBoxBillingAddress.countryCode": {required: true, selectNone:true},
	elecMeterReading:{required:true, minlength:5, maxlength:5, number:true},	
	elecNightMeterReading:{minlength:5, maxlength:5, number:true},	
	ageRadio:{required: true, selectNone: true},
	gprnNumber: {required:true, number: true,minlength: 5,maxlength: 7},
	gasMeterReading: {required:true, number: true, minlength: 4, maxlength: 7},
	gasMeterNumber: {required:true, minlength: 4, maxlength: 24},
	esbElecAccNum: {
				required: true,
				number: true,
				maxlength:9,
				minlength: 9,
				accountNumber: true
			},
	currentElecSupplier: {required:true, selectNone:true},
	otherCurrentElecSupplier: {required:true},
	currentSupplier: {required:true, selectNone:true},
	otherCurrentSupplier: {required:true}
	 },
		
	messages: {
			"esbElecAccNum":{
				required:"Your account number is required and can be found on your latest electricity bill",
				maxlength: "Please enter 9 digits starting with the number 9",
				minlength: "Please enter 9 digits starting with the number 9",
				number: "Please enter 9 digits starting with the number 9",
				accountNumber: "Please enter 9 digits starting with the number 9"
			},
			"mprn": {
				required: "Your MPRN is required and can be found on your latest electricity bill",
				number: "Your MPRN can contain numbers only",
				minlength: "Your MPRN (Meter Point Reference Number) is an 11 digit number beginning with 10",
				maxlength: "Your MPRN (Meter Point Reference Number) is an 11 digit number beginning with 10",
				beginsWith: "Your MPRN (Meter Point Reference Number) is an 11 digit number beginning with 10",
				mprnisusable: "We are having trouble locating your MPRN please contact us on 1850 30 50 90 to proceed, thank you."
			},
			"typeOfBillingAddress":{
				required: "Please choose a type of billing address",
				selectNone: "Please choose a type of billing address"
			},
			"irishStdBillingAddress.street": { required: "Please enter your street name"},
			"prevSupplyAddress.street": { required: "Please enter your previous supply address street name"},
			"poBoxBillingAddress.poBoxNumber": { required: "Please enter PO box number " },
			"poBoxBillingAddress.postCode": { required: "Please enter PO box post code " },
			"poBoxBillingAddress.countyState": {required: "Please enter county /state"},
			"poBoxBillingAddress.countryCode": { required: "Please select  country", 
			selectNone:"Please select  country"},
			"internationalBillingAddress.house": {required: "Please enter the name or number of your premises"},
			"internationalBillingAddress.street1": {required: "Please enter the first line of your address"},
			"internationalBillingAddress.city": {required: "Please enter  town or city"},
			"internationalBillingAddress.countryCode": {required: "Please select country "},
			"ageRadio":{
				required: "Please select yes or no. It is our policy to ensure that certain categories of customers, such as those of an advanced age that are likely to be particularly vulnerable to the impact of disconnection during the winter months [November to March inclusive], are provided with the opportunity to be recorded on a register and protected from such disconnections"
			},
			
			"gprnNumber" :{
				required: "Your GPRN is required and can be found on your latest gas bill",
				number: "Your GPRN appears to be incorrect, it should be between five and seven digits long",
				minlength: "Your GPRN appears to be incorrect, it should be between five and seven digits long",
				maxlength: "Your GPRN appears to be incorrect, it should be between five and seven digits long"
			},
			"gasMeterNumber": {
			required: "Your gas meter number is required and can be found on your latest gas bill",
			minlength: "Your gas meter number is between 4 and 24 characters and can be found on your bill",
			maxlength: "Your gas meter number is between 4 and 24 characters and can be found on your bill"
			},
			"gasMeterReading": {
			required: "Your gas meter reading  is required",
			minlength: "Your gas meter reading is between 4 and 7 digits",
			minlength: "Your gas meter reading is between 4 and 7 digits",
			number: "Your gas meter reading must contain numbers only"
			},
			"elecMeterReading": {
			required: "Please enter your meter reading. This is a five digit number- ignore digits in red or figures surrounded by a red box",
			minlength: "This is a five digit number- ignore digits in red or figures surrounded by a red box",
			minlength: "This is a five digit number- ignore digits in red or figures surrounded by a red box",
			number: "This is a five digit number- ignore digits in red or figures surrounded by a red box"
			},
			"elecNightMeterReading": {
			minlength: "This is a five digit number- ignore digits in red or figures surrounded by a red box",
			minlength: "This is a five digit number- ignore digits in red or figures surrounded by a red box",
			number: "This is a five digit number- ignore digits in red or figures surrounded by a red box"
			},
			"currentElecSupplier":{
			required: "Please select your current electricity supplier",	
			selectNone: "Please select your current electricity supplier"	
			},
			"otherCurrentElecSupplier":{
			required: "Please enter your current electricity supplier"
			},
			"currentSupplier":{
			required: "Please select your current gas supplier",	
			selectNone: "Please select your current gas supplier"	
			}
			,
			"otherCurrentSupplier":{
			required: "Please enter your current gas supplier"
			}
			
	
		}		
	   
  	});



$("#step3Form").validate({
			rules: {	
	bankAccountNo: {number: true,minlength: 8,maxlength: 8},		
	bankSortCode: {required:true, number: true,minlength: 6,maxlength: 6}
	 },
   messages: {
	 "bankAccountNo" :{
		required: "A valid Republic of Ireland bank account number containing 8 digits is required",        
		maxlength: "A valid Republic of Ireland bank account number containing 8 digits is required",
		minlength: "A valid Republic of Ireland bank account number containing 8 digits is required",
		number: "A valid Republic of Ireland bank account number containing 8 digits is required"
	 },
	 "bankSortCode":{
		 required: "Please enter a valid Republic of Ireland banking sort code",
		 maxlength: "Please enter 6 digits",
		 minlength: "Please enter 6 digits",
		number: "Please enter a valid number"
		 }
	 }
  
  	});

$("#step4Form").validate({
			rules: {
				terms:{required: true},
				confirmAuthority:{required: true},
				debtFlag:{required: true},
				recaptcha_response_field:{required: true}
				},
			messages:{
				"terms": {
					required: "Acceptance of the terms and conditions is required"
				},
				"confirmAuthority":{
					required:"Confirmation of details is required"
				},
				"debtFlag":{
					required:"Confirmation that you accept the arrears statement above is required"						
				}				
			},
			errorPlacement: function(error, element) {
				error.appendTo( element.parent("td").next("td") );
			}
});


$("#callbackForm").validate({			
		rules: {
			firstname: {
				required: true,
				lettersonly: true,
				maxlength: 40,
				minlength: 2
			},
			surname: {
				required: true,
				lettersonly: true,
				maxlength: 40,
				minlength: 2
			},
			phone: {
				required: true,
				number: true,
				minlength: 7,
				maxlength: 20
			},
			phoneConfirm: {
				required: true,
				number: true,
				equalTo: '#phone',
				minlength: 7,
				maxlength: 20
			}	
        },
	     messages: {
			"firstname": {
    			required: "Your first name is required",
    			lettersonly: "Your first name can not contain numbers"
   			},
			"surname":{
				required: "Please enter your surname",
    			lettersonly: "Your surname can not contain numbers"	
			},
			"phone": {
				required: "Please enter a valid phone number",
				number: "Your phone number must contain numbers only",
				minlength: "Please enter a valid phone number including the area code without any spaces"
						
			},
			"phoneConfirm": {
				required: "Please re-enter your phone number",
				number: "Your phone number must contain numbers only",
				equalTo: "Your phone number does not match the one above",
				minlength: "Your phone number does not match the one above"
			}

		 }
});
	
// Function for showing/hiding address fields
	function checkChecked(checkID,isSlow){
	
	switch(checkID){
	case "supplyRadio-no": 
		if(isSlow){
		$("#supplyRadio-no").is(':checked') == true? $(".gassupply .reveal").show("slow") : $(".gassupply .reveal").hide("slow"); 
		}
		else{
		$("#supplyRadio-no").is(':checked') == true? $(".gassupply .reveal").show() : $(".gassupply .reveal").hide(); 
		}
	break;
	
	case "billingRadio-no":
	if(isSlow){
	$("#billingRadio-no").is(':checked') == true? $(".gasbill .reveal").show("slow") : $(".gasbill .reveal").hide("slow"); 
	}
	else{
	$("#billingRadio-no").is(':checked') == true? $(".gasbill .reveal").show("slow") : $(".gasbill .reveal").hide("slow");	
	}
	break;
	
	case "prevSupplyRadio-no":
	if(isSlow){
	$("#prevSupplyRadio-no").is(':checked') == true? $("#prevAddressBlock").show("slow") : $("#prevAddressBlock").hide("slow"); 
	}
	else{
	$("#prevSupplyRadio-no").is(':checked') == true? $("#prevAddressBlock").show("slow") : $("#prevAddressBlock").hide("slow");	
	}
	break;
			
			
	case "medicalRadio-yes":
	if(isSlow){
	$("#medicalRadio-yes").is(':checked') == true? $(".medical .reveal").show("slow") : $(".medical .reveal").hide("slow"); 
	}
	else{
	$("#medicalRadio-yes").is(':checked') == true? $(".medical .reveal").show("slow") : $(".medical .reveal").hide();
	}
	break;
	
	
	case "newBillingRadio-yes":
	if(isSlow){
	$("#newBillingRadio-yes").is(':checked') == true? $(".newBillingRadio .reveal").slideDown("normal") : $(".newBillingRadio .reveal").slideUp("normal"); 
	}
	else{
	$("#newBillingRadio-yes").is(':checked') == true? $(".newBillingRadio .reveal").slideDown("normal") : $(".newBillingRadio .reveal").slideUp();
	}
	break;
		
	}
	}

	//toggle div depending on radio selected
	checkChecked('supplyRadio-no',false);

	//toggle div depending on radio selected
	$(".supplyRadio").click(function(){
		checkChecked('supplyRadio-no',true);
	});
	
	 $('.gasbill .reveal').hide();

    checkChecked('billingRadio-no',false);
 	
	//toggle div depending on radio selected
	$(".billingRadio").click(function(){
		checkChecked('billingRadio-no', true);
	});
	

	
	checkChecked('newBillingRadio-yes',false);
	
	$(".newBillingRadio").click(function(){
		checkChecked('newBillingRadio-yes',true);
	});
	
	checkChecked('prevSupplyRadio-no',false);
	$(".prevSupplyRadio").click(function(){
		checkChecked('prevSupplyRadio-no',true);
	});
	
	

	




$('#prevAddressBlock input').addClass('ignore');
$('#prevSupplyRadio-yes').click(function() {$('#prevAddressBlock input').addClass('ignore');});
$('#prevSupplyRadio-no').click(function() {$('#prevAddressBlock input').removeClass('ignore');});

$('.billingAddressBlock input').addClass('ignore');
$('.billingAddressBlock select').addClass('ignore');


function removeActives(){
	$('.addressBlock .active input').addClass('ignore');
	$('.addressBlock .active select').addClass('ignore');
	$('.addressBlock .active').hide().removeClass('active');
}

var changeAddressActive = false;


function checkAddress(){
		 if (changeAddressActive) return false;
        	changeAddressActive = true;

			if($('#typeOfBillingAddress-standard').is(':checked') == true)
            {  
			  	removeActives();
			   	$('#addressBlock1').show('fast', function(){changeAddressActive = false; }).addClass('active');
			   	$('#addressBlock1 input').removeClass('ignore');
			}
			else if($('#typeOfBillingAddress-pobox').is(':checked') == true)
            {	
				removeActives();
			  	$('#addressBlock2').show('fast', function(){changeAddressActive = false; }).addClass('active');
				$('#addressBlock2 input').removeClass('ignore');
				$('#addressBlock2 select').removeClass('ignore');
            }
			else if($('#typeOfBillingAddress-nonrep').is(':checked') == true)
            {
			   	removeActives();
			  $('#addressBlock3').show('fast', function(){changeAddressActive = false; }).addClass('active');
			  $('#addressBlock3 input').removeClass('ignore');
			  $('#addressBlock3 select').removeClass('ignore');
            }
			return false;

			
};	
checkAddress();
$('.gasbill .active input').addClass('ignore');

$('#billingRadio-yes').click(function() {$('.gasbill .active input').addClass('ignore');});
$('#billingRadio-no').click(function() {
	checkAddress();
});

$('.typeOfBillingAddress').change(function() {										  
checkAddress();	
});


$('.last .other input').addClass('ignore');

function checkCurrentSupplier(){
	
	//Modified by Doug, do not remove during merge
	if($('#currentSupplier').val() == "O")
	{  	
			   $('.last .other input').removeClass('ignore');
			   $('.last .other').show('slow');
      }
	else {
			   $('.last .other input').addClass('ignore');
			   $('.last .other').hide('slow');
      
	}
}
checkCurrentSupplier();
$('#currentSupplier').live('change',function() {
checkCurrentSupplier();		
});


function checkCurrentElecSupplier(){
	
	//Modified by Doug, do not remove during merge
	if($('#currentElecSupplier').val() == "O")
	{  	
			   $('.currentElecSupplier .other input').removeClass('ignore');
			   $('.currentElecSupplier .other').show('slow');
      }
	else {
			   $('.currentElecSupplier .other input').addClass('ignore');
			   $('.currentElecSupplier .other').hide('slow');
      
	}
}
checkCurrentElecSupplier();
$('#currentElecSupplier').live('change',function() {
checkCurrentElecSupplier();		
});



function checkAge(){
	if($('#ageRadio').val() == "yes")
      {  
			   $('.special').slideUp();
			   $('.age .reveal').slideDown();
      }
    else if($('#ageRadio').val() == "no")
	{
			   $('.age .reveal').slideUp();
			   $('.special').slideDown();
     }
	  else if($('#ageRadio').val() == "")
	 {
		 $('.age .reveal').slideUp();
		 $('.special').slideUp();
	 }
}
checkAge();


$('#ageRadio').live('change',function() {
checkAge();		
});


$('.exitPopUp').click(function(){
	$(this).addClass('activeLink');
	
});

$('.exitPopUp').fancybox({
		'height'			: 410,
		'autoDimensions'	: false,
		'width' : 750,
		'href' : 'exitPopUp.htm' ,
        'autoScale'     	: false,
		'type'				: 'iframe',
		'scrolling' :	'no',
		'onClosed'			: function(){
			$('.exitPopUp').removeClass('activeLink');
		}
		
});

$("ul li.exitModalExit a").click(function() {
	window.parent.location = $(this).attr('href');
	parent.$.fancybox.close(); 							   
});

$(".exitModalContent a.return").click(function() {
	parent.$.fancybox.close(); 
	window.parent.location = $(this).attr('href');							   
});

$(".exitModalContent a#continueSwitch").click(function() {
	parent.$.fancybox.close(); 						   
});



$('.requestCallBack').fancybox({	 
		'height'			: 410,
		'width' : 750,
		'href' : 'requestCallBack.htm' ,
		'type'				: 'iframe',
		'scrolling' :	'no'
});


$('a#continueSwitch').click( function(){								   
	parent.$.fancybox.close();
});



$(".existing-customer").fancybox({
		'width'				: 560,
		'height'			: 340,
		'onComplete'		: function(){
		$('#existingCustomer .skip').focus(); 
		}
});

$("#existingCustomer ul li a").click(function() {
	$.fancybox.close();
	window.parent.location = $(this).attr('href');
});

$('.new-customer').fancybox({
    
		'width'				: 560,
		'height'			: 340,
		'autoScale'     	: false,
		'onComplete'		: function(){
		$('#newCustomer .skip').focus(); 
		}

});

$('.new-customer').click(function(){
						  
    $('#question2').hide();
	 $('#question3').hide();
	 $('#question1').show();
});

$("#newCustomer #question2 a").click(function() {
	$.fancybox.close(); 										  
	window.parent.location = $(this).attr('href');
							   
});

$("#newCustomer #question3 a").click(function() {
	$.fancybox.close();
	window.parent.location = $(this).attr('href');   
});

;

$('#question1 .modalNo').click( function(){
	$('#question1').fadeOut('slow', function(){										 
	$('#question3').slideDown('slow');										 
	});
});
   

$('#question1 .modalYes').click( function(){
	$('#question1').fadeOut('slow', function(){											 
	$('#question2').slideDown('slow');
});
	
});






$(".priceplanTerms").fancybox({
		'autoScale'     	: false,
		'width'				:  782,
		'height'			: 400,
		'href' : 'priceplanTerms.htm' ,
		'type'				: 'iframe'
});

$(".gas-general").fancybox({
		'autoScale'     	: false,
		'width'				:  782,
		'height'			: 400,
		'type'				: 'iframe'
});

$(".elec-general").fancybox({
		'autoScale'     	: false,
		'width'				:  782,
		'height'			: 400,	
		'type'				: 'iframe'
});






//STEP 3 autofill
function getBankAddress(sortCode){
       
        var url = 'ajaxcall.htm?method=getbankdetails&q='+sortCode;
        //var url = 'tempbankaddress.txt?method=getbankdetails&q='+sortCode;
        $.getJSON(url,function(data){
               
        	if(data.bank == 'unknown'){
        		$('#bankName').val('Unknown sort code');	
        	}else if(data.bank == 'sessionerror'){
        		history.back(); //force the user away from the page
        		return;
			}else{
        		$('#bankName').val(data.bank);
        	}
            
        	$('#bankaddress').val(data.line1);
            $('#bankAddress2').val(data.line2);
            $('#bankAddress3').val(data.line3);
            $('#bankAltSortCode').val(data.altnsc);
               
               
        });
} 




//*********ADDED BY DOUG *************

//STEPS ADDITIONAL SCRIPTS START

if($('#mprn').length > 0){
    $('#mprn').blur(function(){
        var concatVal = $('#mprn').val();
        //added by Doug, do not remove during merge
        if(concatVal.length == 11){
        	getMPRNAddress();
        	checkMPRNOK();
        }
    })
}

if($('#bankSortCode').length > 0){
  
    $('#bankSortCode').blur(function(){
        var concatVal = $('#bankSortCode').val();
        $('#bankSortCode').val(concatVal);
        if(concatVal.toString().length == 6){
               getBankAddress(concatVal);
        }
    })
}



$(function(){
$("#irishStdBillingAddress_street").autocomplete({source:"ajaxcall.htm?method=getaddresses",
									minLength:3,
									select:function(event, data){
										
										//$('#billingAddress2').val(data.item.street);
										$('#irishStdBillingAddress_city').val(data.item.city);
										$('#irishStdBillingAddress_county').val(data.item.county);
										$('#irishStdBillingAddress_countyCode').val(data.item.countycode);
										
									}
	
									}); 

$("#prevSupplyAddress_street").autocomplete({source:"ajaxcall.htm?method=getaddresses",
							   minLength:3,
							   select:function(event, data){
							   		
									$('#prevSupplyAddress_city').val(data.item.city);
									$('#prevSupplyAddress_county').val(data.item.county);
									$('#prevSupplyAddress_countyCode').val(data.item.countycode);
									
									}
								});  


});

function checkMPRNusable(term){
	//Checks the check digit via AJAX, but only if the MPRN is an 11 digit number
	var retval = true;
	
	if(term.match(/^10[0-9]{9}$/)){

		
		var ajaxhref = 'ajaxcall.htm?method=checkmprnusable&term='+term;
	
		/* Valid return values are:
		 * Y - Check Digit OK, address in DB
		 * N - Check Digit OK, address not in DB
		 */
		var ok = $.ajax({
			url:ajaxhref,
			async:false
		}).responseText;
	
		if(ok == 'N'){	
			retval = false;
		}
	}
		
	return retval;
	
}

function getMPRNAddress(){
	
	var url = 'ajaxcall.htm?method=getaddressbymprn&term='+$("#mprn").val();
	
	$.getJSON(url, function(data){
		
		if(data.err){
			if(data.err == 'sessionerror'){
				history.back();
			}
			
			$("#supplyAddress_displayAddrLine1").val("Unknown MPRN");
			$("#supplyAddress_displayAddrLine2").val("");
			$("#supplyAddress_displayAddrLine3").val("");
			//$("#supplyAddress_displayCounty").val("");
			$("#supplyAddress_displayAddrLine4").val("");
			
			$("#supplyAddress_houseNo").val("");
			$("#supplyAddress_addrLine1").val("");
			$("#supplyAddress_addrLine2").val("");
			$("#supplyAddress_street").val("");
			$("#supplyAddress_addrLine4").val("");
			$("#supplyAddress_addrLine5").val("");
			$("#supplyAddress_postCode").val("");
			$("#supplyAddress_city").val("");
			$("#supplyAddress_county").val("");
		}else{
			
			$("#supplyAddress_displayAddrLine1").val(data.dispNameOrNumber);
			$("#supplyAddress_displayAddrLine2").val(data.dispAddrLine1);
			$("#supplyAddress_displayAddrLine3").val(data.dispAddrLine2);
			//$("#supplyAddress_displayCounty").val(data.dispCounty);
			$("#supplyAddress_displayAddrLine4").val(data.dispCounty);
			
			$("#supplyAddress_houseNo").val(data.houseNo);
			$("#supplyAddress_addrLine1").val(data.addrLine1);
			$("#supplyAddress_addrLine2").val(data.addrLine2);
			$("#supplyAddress_street").val(data.street);
			$("#supplyAddress_addrLine4").val(data.addrLine4);
			$("#supplyAddress_addrLine5").val(data.addrLine5);
			$("#supplyAddress_postCode").val(data.postCode);
			$("#supplyAddress_city").val(data.city);
			$("#supplyAddress_county").val(data.county);
		}	
	});
	
}

//*************************************

// ---- FAQs ---------------------------------------------------------------------------------------------------------------

		$('.faqs dd').hide(); // Hide all DDs inside .faqs
		$('.faqs dt').hover(function(){$(this).addClass('hover')},function(){$(this).removeClass('hover')}).click(function(){ // Add class "hover" on dt when hover
			$(this).toggleClass('active');
			$(this).children('.show').toggle();
			$(this).next().slideToggle('normal'); // Toggle dd when the respective dt is clicked
			
		});
		
		$('.hide').click(function(){ // Add class "hover" on dt when hover
			$(this).parent('dd').prev('dt').toggleClass('active');
			$(this).parent('dd').slideToggle('normal'); // Toggle dd when the respective dt is clicked
				});

});

$(document).keyup(function(e) {
  if (e.keyCode == 27) {parent.$.fancybox.close();}   // esc
});
