var $j = jQuery.noConflict();
$j(function(){
	$j("#cars").change(function() {		
		var cat_ID = $j("option:selected", this).val();
		if(cat_ID != ''){
			$j("#car_cat").removeClass('clsHide');
			$j("#car_cat").addClass('clsShow');
			$j.post(site_url + '/wp-ajax.php', {cat_ID : cat_ID}, 
				function(data){
					addCategories(data, 'car_cat');
				},
				'json'
			);
		}
		else{
			$j('#car_cat').find('option').remove().end();
			$j("#car_cat").removeClass('clsShow');
			$j("#car_cat").addClass('clsHide');
		}
	});
	
	$j("#vans").change(function() {
		var cat_ID = $j("option:selected", this).val();
		if(cat_ID != ''){
			$j("#van_cat").removeClass('clsHide');
			$j("#van_cat").addClass('clsShow');
			$j.post(site_url + '/wp-ajax.php', {cat_ID : cat_ID}, 
				function(data){					
					addCategories(data, 'van_cat');
				},
				'json'
			);
		}
		else{
			$j('#van_cat').find('option').remove().end();
			$j("#van_cat").removeClass('clsShow');
			$j("#van_cat").addClass('clsHide');
		}
	});
	
	$j("#trucks").change(function() {
		var cat_ID = $j("option:selected", this).val();
		if(cat_ID != ''){
			$j("#truck_cat").removeClass('clsHide');
			$j("#truck_cat").addClass('clsShow');
			$j.post(site_url + '/wp-ajax.php', {cat_ID : cat_ID}, 
				function(data){
					addCategories(data, 'truck_cat');
				},
				'json'
			);
		}
		else{
			$j('#truck_cat').find('option').remove().end();
			$j("#truck_cat").removeClass('clsShow');
			$j("#truck_cat").addClass('clsHide');
		}
	});
	
	$j("#boats").change(function() {
		var cat_ID = $j("option:selected", this).val();
		if(cat_ID != ''){
			$j("#boats_cat").removeClass('clsHide');
			$j("#boats_cat").addClass('clsShow');
			$j.post(site_url + '/wp-ajax.php', {cat_ID : cat_ID}, 
				function(data){
					addCategories(data, 'boats_cat');
				},
				'json'
			);
		}
		else{
			$j('#boats_cat').find('option').remove().end();
			$j("#boats_cat").removeClass('clsShow');
			$j("#boats_cat").addClass('clsHide');
		}
	});
	
/*	$j("#btn-contact").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-comment").removeClass("buttons-selected");
		
		$j("#wp-comment-form").hide('fast');
		$j("#wp-contact-form").slideDown('slow');
	});
	
	$j("#btn-comment").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-contact").removeClass("buttons-selected");
		
		$j("#wp-contact-form").hide('fast');
		$j("#wp-comment-form").slideDown('slow');
	});
*/
/*************************************************************************************************************/
/* postpage tap script   */
/*************************************************************************************************************/
$j("#btn-Desc").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-comments").removeClass("buttons-selected");
		$j("#btn-contactform").removeClass("buttons-selected");
		$j("#btn-related").removeClass("buttons-selected");
		
		$j("#wp_btn-comments").hide('fast');
		//$j("#wp_btn-contactform").hide('fast');
		$j("#wp_btn-related").hide('fast');
		$j("#wp_btn-Desc").slideDown('slow');
		
	});
	$j("#btn-comments").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-Desc").removeClass("buttons-selected");
		$j("#btn-contactform").removeClass("buttons-selected");
		$j("#btn-related").removeClass("buttons-selected");
		
		$j("#wp_btn-Desc").hide('fast');
		//$j("#wp_btn-contactform").hide('fast');
		$j("#wp_btn-related").hide('fast');
		$j("#wp_btn-comments").slideDown('slow');
		//$j("#ggravity_form").hide('fast');
	});
	$j("#btn-contactform").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-Desc").removeClass("buttons-selected");
		$j("#btn-comments").removeClass("buttons-selected");
		$j("#btn-related").removeClass("buttons-selected");
		
		$j("#wp_btn-Desc").hide('fast');
		//$j("#wp_btn-comments").hide('fast');
		$j("#wp_btn-related").hide('fast');
		$j("#wp_btn-contactform").slideDown('slow');
		//$j("#ggravity_form").hide('fast');
	});
	$j("#btn-related").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-Desc").removeClass("buttons-selected");
		$j("#btn-comments").removeClass("buttons-selected");
		$j("#btn-contactform").removeClass("buttons-selected");
		
		$j("#wp_btn-Desc").hide('fast');
		$j("#wp_btn-comments").hide('fast');
		//$j("#wp_btn-contactform").hide('fast');
		$j("#wp_btn-related").slideDown('slow');
		//$j("#ggravity_form").hide('fast');
	});
	/*$j("#Vraag_offerte").click(function() {
		
		$j("#ggravity_form").slideDown('slow');
	});*/
/***************************************************End **********************************************************/
	$j("#btn-contact").click(function() { 
		$j(this).addClass("buttons-selected");
		$j("#btn-comment").removeClass("buttons-selected");
		$j("#btn-recent").removeClass("buttons-selected");
		
		$j("#wp-comment-form").hide('fast');
		$j("#wp-recent-post").hide('fast');
		$j("#wp-contact-form").slideDown('slow');
	});
	
	$j("#btn-comment").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-contact").removeClass("buttons-selected");
		$j("#btn-recent").removeClass("buttons-selected");
		
		$j("#wp-contact-form").hide('fast');
		$j("#wp-recent-post").hide('fast');
		$j("#wp-comment-form").slideDown('slow');
	});

	$j("#btn-recent").click(function() {
		$j(this).addClass("buttons-selected");
		$j("#btn-contact").removeClass("buttons-selected");
		$j("#btn-comment").removeClass("buttons-selected");
		
		$j("#wp-contact-form").hide('fast');
		$j("#wp-comment-form").hide('fast');
		$j("#wp-recent-post").slideDown('slow');
	});
	
	/////////////////////////////////////////contact form submit function //////////////////////////////////////////////////
	
	$j("#contact-form-submit-botton").click(function(){ 
		var username 	= $j("#username").attr("value");
		var email 		= $j("#email-1").attr("value");
		var message 	= $j("#message-1").val();
		var captcha_code 	= $j("#captcha_code").attr("value");
		if(username == ''){
			$j("#username").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#username").removeClass("clsBorderRed");
		}
		if(email == '' || emailCheck(email) == false){
			$j("#email-1").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#email-1").removeClass("clsBorderRed");
		}
		if(message == ''){
			$j("#message-1").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#message-1").removeClass("clsBorderRed");
		}
		
		if(captcha_code == '' || captcha_code.length != 6){
			$j("#captcha_code").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#captcha_code").removeClass("clsBorderRed");
		}
		
		document.wp_contact_form.submit();
	});
	
	//////////////////////////////////////contact form print and submit function ///////////////////////////////////////////////
	
	$j("#contact-form-print-submit-botton").click(function(){ 
		var username 	= $j("#username").attr("value");
		var email 		= $j("#email-1").attr("value");
		var message 	= $j("#message-1").val();
		var captcha_code 	= $j("#captcha_code").attr("value");
		if(username == ''){
			$j("#username").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#username").removeClass("clsBorderRed");
		}
		if(email == '' || emailCheck(email) == false){
			$j("#email-1").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#email-1").removeClass("clsBorderRed");
		}
		if(message == ''){
			$j("#message-1").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#message-1").removeClass("clsBorderRed");
		}
		
		if(captcha_code == '' || captcha_code.length != 6){
			$j("#captcha_code").addClass("clsBorderRed");
			return false;
		}
		else{
			$j("#captcha_code").removeClass("clsBorderRed");
		}
		
		formprinting(); 
		document.wp_contact_form.submit();
	});
});

function formprinting(){
	var tmpurl='http://www.chiptuningexperience.nl/wp-content/themes/chiptuning';
	newwin=window.open('','printwin','left=100,top=100,width=900,height=705');
	newwin.document.write('<HTML>\n<HEAD>\n');
	newwin.document.write('<TITLE>CHIPTUNING EXPERIENCE NEDERLAND</TITLE>\n');
	newwin.document.write('<link href="'+tmpurl+'/css/style.css" rel="stylesheet" type="text/css">\n');
	newwin.document.write('<link href="'+tmpurl+'/css/pdfstyle.css" rel="stylesheet" type="text/css">\n');
	newwin.document.write('<script>\n');
	newwin.document.write('function chkstate(){\n');
	newwin.document.write('if(document.readyState=="complete"){\n');
	newwin.document.write('window.close()\n');
	newwin.document.write('}\n');
	newwin.document.write('else{\n');
	newwin.document.write('setTimeout("chkstate()",2000)\n');
	newwin.document.write('}\n');
	newwin.document.write('}\n');
	newwin.document.write('function print_win(){\n');
	newwin.document.write('window.print();\n');
	newwin.document.write('window.close()\n');
	newwin.document.write('chkstate();\n');
	newwin.document.write('}\n');
	newwin.document.write('<\/script>\n');
	newwin.document.write('</HEAD>\n');
	newwin.document.write('<BODY id="printablebody" class="single" onload="print_win()">\n');
	newwin.document.write('<div style="float:left; width:600px; margin:20px 0px 0px 50px;">');
	newwin.document.write('<div style="float:left;margin-bottom:20px;"><img src="'+tmpurl+'\/images\/logo.jpg" ><\/div>');
	newwin.document.write('<table border="0" width="600" id="table1"><tbody>');
	
	newwin.document.write('<tr><td width="140" bgcolor="#000000" align="left" class="head1">Uw naam<\/td><td align="left"><input type="text" size="50" value="'+$j("#username").val()+'" style="border:none; font-family:Arial;"\/><\/td></tr>');
	
	newwin.document.write('<tr><td bgcolor="#000000" align="left" class="head1">E-mailadres<\/td><td align="left"><input type="text" size="50" value="'+$j("#email-1").val()+'" style="border:none; font-family:Arial;"\/><\/td><\/tr>');
	
	newwin.document.write('<tr><td bgcolor="#000000" align="left" class="head1">Telefoon<\/td><td align="left" class="optionscolumn"><input type="text" size="50" value="'+$j("#telefoon").val()+'" style="border:none; font-family:Arial;"\/><\/td><\/tr>');
	
	newwin.document.write('<tr><td bgcolor="#000000" align="left" class="head1">Woonplaats<\/td><td align="left" class="optionscolumn"><input type="text" size="50" value="'+$j("#woonplaats").val()+'" style="border:none; font-family:Arial;"\/><\/td><\/tr>');
	
	newwin.document.write('<tr><td colspan="2">&nbsp;<\/td><\/tr>');
	
	newwin.document.write('<tr><td bgcolor="#000000" align="left" class="head1">Uw type\/merk auto<\/td><td align="left" class="optionscolumn"><input type="text" size="50" value="'+$j("#auto").val()+'" style="border:none; font-family:Arial;"\/><\/td><\/tr>');
	
	newwin.document.write('<tr><td bgcolor="#000000" align="left" class="head1">Brandstof<\/td><td align="left" class="optionscolumn"><input type="text" size="50" value="'+$j("#brandstof").val()+'" style="border:none; font-family:Arial;"\/><\/td><\/tr>');
	
	newwin.document.write('<tr><td bgcolor="#000000" align="left" class="head1">Bouwjaar<\/td><td align="left" class="optionscolumn"><input type="text" size="50" value="'+$j("#bouwjaar").val()+'" style="border:none; font-family:Arial;"\/><\/td><\/tr>');
	
	newwin.document.write('<tr><td bgcolor="#000000" align="left" class="head1" valign="top">Bericht</td><td align="left" class="optionscolumn" valign="top"><textarea rows="10" cols="50" style="border:none; font-family:Arial;">'+$j("#message-1").val()+'</textarea></td></tr>');

	newwin.document.write('<\/tbody><\/table>');
	
	newwin.document.write('<div style="float:left; width:600px; margin:100px 0px 0px 0px;">');
	newwin.document.write('<p>Chiptuning Experience Nederland</p>');
	newwin.document.write('<p>Betuwehaven 29, Nieuwegein</p>');
	newwin.document.write('<p>Tel: +31(0)30-6876464</p>');
	newwin.document.write('<p>www.chiptuningexperience.nl</p>');
	newwin.document.write('<p>info@chiptuningexperience.nl</p>');
	newwin.document.write('</div>');
	
	newwin.document.write('<\/div><\/BODY>\n');
	newwin.document.write('<\/HTML>\n');
	newwin.document.close(); 
}

function addCategories(data, ele){
	$j('#' + ele).find('option').remove().end();
	var options = '<option value="" selected="selected">Kies uw autotype</option>';
	for(var i = 0; i < data.length; i++){
		if(data[i].cat_NAME && data[i].cat_NAME != ''){
			options += '<option value="' + data[i].cat_ID + '">' + data[i].cat_NAME + '</option>';
		}
		$j('#' + ele).html(options);
	}
}

function clickGoForCategory(main_cat, sub_cat, root_cat){
	if(document.getElementById(main_cat).value == 0 && document.getElementById(sub_cat).value == 0){
		alert('Please select a brand or model');
		return false;
	}
	else{
		var _main_cat = $j("option:selected", '#' + main_cat).val();
		var _sub_cat = $j("option:selected", '#' + sub_cat).val();
		
		var _to_call_cat = '';
		if(_sub_cat != '0' && _sub_cat != '')
			_to_call_cat = _sub_cat;
		else if(_main_cat != '0' && _main_cat != '')
			_to_call_cat = _main_cat;
		
		if(_to_call_cat != '0' && _to_call_cat != ''){
			$j.post(site_url + '/wp-ajax.php', {action : 'get_cat_link', cat_ID : _to_call_cat, root_cat : root_cat}, 
				function(data){
					document.location = data.link;
				},
				'json'
			);
		}
		else{
			alert('Please select a brand or model');
			return false;
		}
	}
}

/* Email validator */
function emailCheck (emailStr){
	/* The following variable tells the rest of the function whether or not
	to verify that the address ends in a two-letter country or well-known
	TLD.  1 means check it, 0 means don't. */

	var checkTLD=1;

	/* The following is the list of known TLDs that an e-mail address must end with. */

	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;

	/* The following pattern is used to check if the entered e-mail address
	fits the user@domain format.  It also is used to separate the username
	from the domain. */
	
	var emailPat=/^(.+)@(.+)$/;
	
	/* The following string represents the pattern for matching all special
	characters.  We don't want to allow special characters in the address. 
	These characters include ( ) < > @ , ; : \ " . [ ] */

	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	
	/* The following string represents the range of characters allowed in a 
	username or domainname.  It really states which chars aren't allowed.*/
	
	var validChars="\[^\\s" + specialChars + "\]";
	
	/* The following pattern applies if the "user" is a quoted string (in
	which case, there are no rules about which characters are allowed
	and which aren't; anything goes).  E.g. "jiminy cricket"@disney.com
	is a legal e-mail address. */
	
	var quotedUser="(\"[^\"]*\")";

	/* The following pattern applies for domains that are IP addresses,
	rather than symbolic names.  E.g. joe@[123.124.233.4] is a legal
	e-mail address. NOTE: The square brackets are required. */
	
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	
	/* The following string represents an atom (basically a series of non-special characters.) */
	
	var atom=validChars + '+';
	
	/* The following string represents one word in the typical username.
	For example, in john.doe@somewhere.com, john and doe are words.
	Basically, a word is either an atom or quoted string. */
	
	var word="(" + atom + "|" + quotedUser + ")";

	// The following pattern describes the structure of the user
	
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	
	/* The following pattern describes the structure of a normal symbolic
	domain, as opposed to ipDomainPat, shown above. */
	
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	
	/* Finally, let's start trying to figure out if the supplied address is valid. */
	
	/* Begin with the coarse pattern to simply break up user@domain into
	different pieces that are easy to analyze. */

	var matchArray=emailStr.match(emailPat);

	if (matchArray==null) {

		/* Too many/few @'s or something; basically, this address doesn't
		even fit the general mould of a valid e-mail address. */
		
		//alert("Email address seems incorrect (check @ and .'s)");
		return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];

	// Start by checking that only basic ASCII characters are in the strings (0-127).

	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
			//alert("Ths username contains invalid characters.");
			return false;
		}
	}
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
			//alert("Ths domain name contains invalid characters.");
			return false;
		}
	}

	// See if "user" is valid 
	
	if (user.match(userPat)==null) {
		
		// user is not valid
	
		//alert("The username doesn't seem to be valid.");
		return false;
	}

	/* if the e-mail address is at an IP address (as opposed to a symbolic
	host name) make sure the IP address is valid. */

	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
		// this is an IP address
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				//alert("Destination IP address is invalid!");
				return false;
			}
		}
		return true;
	}

	// Domain is symbolic name.  Check if it's valid.
 
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
			//alert("The domain name does not seem to be valid.");
			return false;
		}
	}

	/* domain name seems valid, but now make sure that it ends in a
	known top-level domain (like com, edu, gov) or a two-letter word,
	representing country (uk, nl), and that there's a hostname preceding 
	the domain or country. */

	if (checkTLD && domArr[domArr.length-1].length!=2 && 
		domArr[domArr.length-1].search(knownDomsPat)==-1) {
		//alert("The address must end in a well-known domain or two letter " + "country.");
		return false;
	}

	// Make sure there's a host name preceding the domain.
	
	if (len < 2) {
		//alert("This address is missing a hostname!");
		return false;
	}

	// If we've gotten this far, everything's valid!
	return true;
}
