Cufon.replace('h2, h3, .nav_top li a, .nav_main a, a.emphasis, a.learn, .loginfo, .subnav a, .btn_blue span, .btn_blue_sm span', {hover: true, fontFamily: 'Gotham Medium'});
Cufon.replace(' p.pronounce,h1, #tagline, h2 span, .home_box_top h2, .home_box_help h2', {hover: true, fontFamily: 'Gotham Book'});

jQuery(document).ready(function(){
	Cufon.now();

	/*-------- Ajax login form--------*/	
	$("#login_form_ajax").submit(function(){  
	
		var str = $(this).serialize();  

		$.ajax({  
		    type: "POST",
		    url: "login/process.php",  // Send the login info to this page
		    data: str,  
		    success: function(msg){  
				$("#login_popup").ajaxComplete(function(event, request, settings){  
					 if(msg == 'OK') // LOGIN OK?
					 {  
						window.location = 'download_step2.php';	 
					 }  
					 else // ERROR?
					 {  
						 var login_response = msg;
						 $('#error_response').html(login_response);
					 }  
				 });  
			 }  
		}); // -- End AJAX Call --
		return false;
	}); // end submit event
	
	

	/*-------- Ajax Promo code check--------*/	
	$(".promo_check").live('click', function(){  
		var str = "subcheckpromo=1&promo_code=" + $("#promo_code").val();  

		$.ajax({  
		    type: "POST",
		    url: "/login/process.php",  // Send the login info to this page
		    data: str,  
		    success: function(msg){  
						if(msg > 0){
							$('#promo_response').html("Valid promo code");
							$('#promo_response').removeClass('not_valid');
							$('#promo_response').addClass('is_valid');
						} else {
							$('#promo_response').html('Invalid promo code. <a href="javascript:void(0);" class="promo_check">Try again?</a>');
							$('#promo_response').addClass('not_valid');
						}	
			 }  
		}); // -- End AJAX Call --
		return false;
	}); 



	/*-------- Ajax User Registration Check--------*/	
	$("#check_user").live('click', function(){
		var val = $("#user").val();
		var str = "user=" + val;  
		var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;

		if(val != "" && val.match(emailExp)){
			$.ajax({  
			    type: "POST",
			    url: "/includes/registration_check.php",  // Send the login info to this page
			    data: str,
			    success: function(msg){  
			    				
					if(msg == 0){
						$('#yes_reg').hide();
						$('#no_reg').show();
						$('#registered').val('0');
					} else {
						$('#registered').val('1');
						var userInfoArray = jQuery.parseJSON(msg);
						
						var userInfo = "";
						userInfo += '<li><label><strong>Name:</strong></label>' + userInfoArray.fname +" "+ userInfoArray.lname + '</li>';

						userInfo += '<li><label><strong>Organization:</strong></label>'+ userInfoArray.organization + '</li>';

						userInfo += '<li><label><strong>Address:</strong></label>' + userInfoArray.address + '</li>';
						userInfo += '<li><label>&nbsp;</label>'+ userInfoArray.city + ', ' + userInfoArray.state + '&nbsp;&nbsp;' + userInfoArray.zip + " " + userInfoArray.ccode + '</li>';

						$('#account_details').html(userInfo);
						$('#no_reg').hide();
						$('#yes_reg').show();
					}
					
					$('#po_step2').show();
					$('#step2').show();
					
				 }  
			}); // -- End AJAX Call --
		}
		return false;
	}); 

	//show edit account details & username form on accounts page
	$("#edit_username").bind('click', function() {
		$("#uname_edit_form").show();
		$("#account_uname").hide();
	});
	
	$("#edit_account").bind('click', function() {
		$("#edit_account_form").show();
		$("#account_details").hide();
	});
	


	// Show country/province for state based on country
		if ($("#country").val() == "US" || $("#country").val() == "") {
			$("#outside_us").hide();
			$("#inside_us").show();
		} else {
			$("#outside_us").show();
			$("#inside_us").hide();
		}

	//Show country/province form field for non-US countries
	$("#country").bind('change', function() {
		if ($("#country").val() != "US") {
			$("#outside_us").show();
			$("#inside_us").hide();
		} else {
			$("#outside_us").hide();
			$("#inside_us").show();
		}
		
	});

	//Validate registration form
	$("#register_form").validate({
		rules: {
			user:  {
				required: true,
				email: true
			},
			
			fname: "required",
			lname: "required",
			address: "required",
			city: "required",
			phone: "required",
			state: {
				required: {
					depends: function(element) {
						return ($("#country").val() == "US" || $("#country").val()== "");
					}
				}
			},
			state_other: {
				required: {
					depends: function(element) {
						return $("#country").val() != "US";
					}
				}
			},
			zip: "required",
			country: "required"
		},
		
		messages: {
			user:  {
				required: "please enter your email address",
				email: "please enter a valid email address"
			},
			fname: "please enter your first name",
			lname: "please enter your last name",
			phone: "please enter your phone number",
			address: "please enter your street address",
			city: "please enter your city",
			state: "please select a state",
			state_other: "please enter your county or province",
			zip: "please enter your postal code",
			country: "please select your country"
			
		},
		errorElement: "span"
		
	});
	
	//Validate login form
	$("#login_form").validate({
		rules: {
			login_user:  {
				required: true,
				email: true
			},
			login_pass: "required"
		},
		
		messages: {
			login_user:  {
				required: "please enter your email address",
				email: "please enter a valid email address"
			},
			
			login_pass: "please enter your password"
		},
		errorElement: "span"
		
	});

	//Validate change password
	$("#change_pw").validate({
		rules: {
			curpass: "required",
			newpass: {
				required: true,
      			rangelength: [5, 20]
			},
			newpass_match:  {
				equalTo: "#newpass"
			}
		},
		
		messages: {
			curpass: "please enter your current password",
			newpass: {
				required: "please enter a new password",
      			rangelength: "password must be 5-20 characters"
			},
			newpass_match: {
				required: "please retype your new password",
				equalTo: "passwords don't match"
			}
		},
		errorElement: "span"
		
	});
	
	//Validate username edit form
	$("#uname_edit_form").validate({
		rules: {
			user:  {
				required: true,
				email: true
			},
			curpass: "required"
			
		},
		
		messages: {
			user:  {
				required: "please enter your email address",
				email: "please enter a valid email address"
			},
			curpass: "please enter your password"
		},
		
		errorElement: "span"
		
	});
	
		
	//prevent buy button from multiple submissions
	$("#payment_info").submit(
	  function() {
	    $("input.submit").attr("disabled","true");
	  }
	);
	
	

	//Set language cookie
	$("#lang_german").bind('click', function() {
		$.cookie("lang", "ger", { expires: 7, path: '/' });
	});

	$("#lang_eng").bind('click', function() {
		$.cookie("lang", "eng", { expires: 7, path: '/' });
	});


	//Pop-up for W9 Form request
	$("a[rel^='prettyPhoto']").prettyPhoto({
		social_tools:false, 
		show_title: false, 
		allow_resize: false,
		deeplinking: false,
		slideshow: false, 
		horizontal_padding: 0, 
		markup: '<div class="pp_pic_holder"> \
					<div class="ppt">&nbsp;</div> \
					<div class="pp_content_container"> \
						<div class="pp_left"> \
						<div class="pp_right"> \
							<div class="pp_content"> \
								<div class="pp_details"> \
									<a class="pp_close" href="#">Close</a> \
								</div> \
								<div class="pp_fade"> \
									<div id="pp_full_res"></div> \
								</div> \
							</div> \
						</div> \
						</div> \
					</div> \
				</div> \
				<div class="pp_overlay"></div>'
	});

	
	
	
}); //END document ready



