function addToFavorites()
{ 
	if (window.external) 
	{ 
		window.external.AddFavorite(urlAddress,pageName)
	} 
	else 
	{ 
		alert("Sorry! Your browser doesn't support this function."); 
	} 
}

//Code to load the models after the Make has been selected
$(document).ready(function() {
	$('#calcsubmit').bind('click',function()
	{
		var cashprice = $('#cashprice').val();
		var deposit = $('#deposit').val();
		var loanlength = $('#loanlength').val();
		var loanvalue = cashprice - deposit;
		loanvalue = loanvalue.toFixed(2);
		var totalrepayment = (loanvalue * 1.07)+300;
		totalrepayment = totalrepayment.toFixed(2);
		var monthrepayment = totalrepayment / loanlength;
		monthrepayment = monthrepayment.toFixed(2);
		$('#loanvalue').val(String.fromCharCode(163)+loanvalue);
		$('#monthrepayment').val(String.fromCharCode(163)+monthrepayment);
		$('#totalrepayment').val(String.fromCharCode(163)+totalrepayment);
		return false;
	});
	
	pageurl = window.location.search.substring(1);

	function querySt(qs) 
	{
		pageurl = window.location.search.substring(1);
		qssplit = pageurl.split("&");
		for (i=0;i<qssplit.length;i++) 
		{
			qssplitval = qssplit[i].split("=");
			if (qssplitval[0] == qs) 
			{
				return qssplitval[1];
			}
		}
	}

	var koko = querySt("page");

	//make autocomplete function
	$("#make").autocomplete({
        source: function( request, response ) 
        {
        		url = "remotesearch.php?type=make&term="+ request.term;
            
            $.getJSON(url + '&callback=?', function(data) {
                response(data);
            });
            
            $("#model").attr("value", "");
            //model autocomplete
            $("#model").autocomplete({
                source: function( request, response ) 
                {
                		url = "remotesearch.php?type=model&make="+$("#make").attr("value")+"&term="+ request.term;
                    
                    $.getJSON(url + '&callback=?', function(data) {
                        response(data);
                    });
                }
            });
            $("#model").autocomplete('option','minLength',0);
            $("#model").bind("click", function(event, ui){
            	$("#model").autocomplete("search" , '');
            });
        }
    });
    
    $("#make").autocomplete('option','minLength',0);
    $("#make").bind("click", function(event, ui){
    	$("#make").autocomplete("search" , '');
    });
    
    $("#minprice").autocomplete({
        source: function( request, response ) 
        {
        		url = "remotesearch.php?type=minprice&term="+ request.term;
            
            $.getJSON(url + '&callback=?', function(data) {
                response(data);
            });
        }
    });
    $("#minprice").autocomplete('option','minLength',0);
    $("#minprice").bind("click", function(event, ui){
    	$("#minprice").autocomplete( "search" , '' );
    });

    $("#maxprice").autocomplete({
        source: function( request, response ) 
        {
        	url = "remotesearch.php?type=maxprice&term=" + request.term;
            $.getJSON(url + '&callback=?', function(data) {
                response(data);
            });
        }
    });
    $("#maxprice").autocomplete('option','minLength',0);
    $("#maxprice").bind("click", function(event, ui){
    	$("#maxprice").autocomplete( "search" , '' );
    });
    
    /******** FANCYBOX ********/
    /* Date picker */
    	$("#bookingdate").datepicker({
			changeMonth: true,
			changeYear: true
		});
    
	/* Apply fancybox to multiple items */
	
	$(".imagebox").fancybox({
		//'transitionIn'	:	'elastic',
		//'transitionOut'	:	'elastic',
		'speedIn'		:	600, 
		'speedOut'		:	200,
		'width'			:	640,
		'height'		:	480
		//'overlayShow'	:	false
	});
	
	$('#frpage').attr('value', document.location);
	
	$("#sendtofriend").fancybox({
		'scrolling'		: 'no',
		'titleShow'		: false,
		'width'			: 220,
		'onClosed'		: function() {
		    $("#friend_error").hide();
		}
	});
	
	$("#friend_form").bind("submit", function() {
		if ($("#frname").val().length < 1 || $("#fremail").val().length < 1 || $("#frpage").val().length < 1) {
		    $("#friend_error").show();
		    $.fancybox.resize();
		    return false;
		}

		$.fancybox.showActivity();
		
		$.post("modules/friendmailer.php", {name: $("#frname").val(), 
											   email: $("#fremail").val(), 
											   page: $("#frpage").val(), 
											   message: $("#frmessage").val()},
			function(data){$.fancybox(data);}
		);
		
		return false;
	});
	
    /******** Change Image ********/

	$(".unselected").live('click',function(){
		$(this).parent().attr('rel', '');
		$(".selected").parent().attr('rel', 'imagegroup');
		$("#mainimageimg").attr('src', $(this).attr('src'));
		$("#mainimage .imagebox").attr('href', $(this).attr('src'));
		$(".selected").removeClass('selected').addClass('unselected');
		$(this).removeClass('unselected').addClass('selected');
	});
	
	$('.accordion').live('click',function(){
		$(this).next().toggle();
		return false;
	}).next().hide();
	
	$('#partex').bind('change',function()
	{
		$('#partexlocatecontent').toggle(400);
		return false;
	});
	
	/***** Image Slideshow ****/
	$('.slideshow').cycle({
		fx: 'fade' // choose your transition type, ex: fade, scrollUp, shuffle, etc...
	});
	
	/***** Details Tabs Change *****/
	$('.tabUnselected').live('click',function(){
		$('.tabSelected').addClass('tabUnselected').removeClass('tabSelected');
		$(this).addClass('tabSelected').removeClass('tabUnselected');
		for(i=1;i<=3;i++)
		{
			if($(this).hasClass('tab'+i))
			{
				$('.content'+i).addClass('changer');
				$('.selectedContent').addClass('unselectedContent').addClass('temp').removeClass('selectedContent');
				$('.changer').addClass('selectedContent').removeClass('unselectedContent').removeClass('changer');
			}
		}
		$('.temp').removeClass('selectedContent').addClass('unselectedContent').removeClass('temp');
	});
});
var RecaptchaOptions = {
		   theme : 'blackglass'
		};

var keyStr = "ABCDEFGHIJKLMNOP" +
"QRSTUVWXYZabcdef" +
"ghijklmnopqrstuv" +
"wxyz0123456789+/" +
"=";

function encode64(input) {
input = escape(input);
var output = "";
var chr1, chr2, chr3 = "";
var enc1, enc2, enc3, enc4 = "";
var i = 0;

do {
chr1 = input.charCodeAt(i++);
chr2 = input.charCodeAt(i++);
chr3 = input.charCodeAt(i++);

enc1 = chr1 >> 2;
enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
enc4 = chr3 & 63;

if (isNaN(chr2)) {
enc3 = enc4 = 64;
} else if (isNaN(chr3)) {
enc4 = 64;
}

output = output +
keyStr.charAt(enc1) +
keyStr.charAt(enc2) +
keyStr.charAt(enc3) +
keyStr.charAt(enc4);
chr1 = chr2 = chr3 = "";
enc1 = enc2 = enc3 = enc4 = "";
} while (i < input.length);

return output;
}

function decode64(input) 
{
	var output = "";
	var chr1, chr2, chr3 = "";
	var enc1, enc2, enc3, enc4 = "";
	var i = 0;
	
	// remove all characters that are not A-Z, a-z, 0-9, +, /, or =
	var base64test = /[^A-Za-z0-9\+\/\=]/g;
	if (base64test.exec(input)) {
	alert("There were invalid base64 characters in the input text.\n" +
	"Valid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\n" +
	"Expect errors in decoding.");
	}
	input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
	
	do {
	enc1 = keyStr.indexOf(input.charAt(i++));
	enc2 = keyStr.indexOf(input.charAt(i++));
	enc3 = keyStr.indexOf(input.charAt(i++));
	enc4 = keyStr.indexOf(input.charAt(i++));
	
	chr1 = (enc1 << 2) | (enc2 >> 4);
	chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
	chr3 = ((enc3 & 3) << 6) | enc4;
	
	output = output + String.fromCharCode(chr1);
	
	if (enc3 != 64) {
	output = output + String.fromCharCode(chr2);
	}
	if (enc4 != 64) {
	output = output + String.fromCharCode(chr3);
	}
	
	chr1 = chr2 = chr3 = "";
	enc1 = enc2 = enc3 = enc4 = "";
	
	} 
	while (i < input.length);
	
	return unescape(output);
}		
