$(document).ready(function(jsip) {


/* checks */

	if (typeof pageName!="undefined") {
		if (pageName == "thankyou.php") {
			ajaxStatusCheck();
			var intCntTmp = 0;
			var statusInt = setInterval(ajaxStatusCheck, 4000);

			return false;
		} 
	} //typeof



/* events */

	$("#ppform #btnSubmit").click(function() {
		captchaAjax();
		return false;
	});

	$("#ppform2 #btnSubmit2").click(function() {
		ajaxYenDbSubmit2();
		return false;
	});

	$("#btnCheckavailability").click(function() {
		ajaxCheckUname(false);
		return false;
	});


	$('.chaptericon').click(function(){
		_gaq.push(['_trackEvent', 'YenPlusNav', 'SidebarClick', $(this).attr('id')]);
		BookBrowser.jump($(this).attr('name'));
		return false;
	});


	$('#explanation').click(function(){
		$(this).hide();
		$('#chapters').show();
		return false;
	});

	$('.outview').click(function() {
		_gaq.push(['_trackEvent', 'YenPlusNav', 'PopOutClick', $(this).attr('id')]);
		BookBrowser.zoom();
		return false;
	});
/* functions */

	function ajaxYenDbSubmit(trialflag) {
		

		if (!$("#regform").valid()) {
			alert('Please check your information again, some of it appears incorrectly entered.');
			Recaptcha.reload();
			return false;
		}

		var ajaxUrl = "interface/ajax_subscribe_proc.php";		
		$('#custom').val('uname='+$("#uname").val());
		var ajaxData = $("#regform").serialize();

		$.ajax({
		   type: "POST",
		   url: ajaxUrl,
		   data: ajaxData,
		   dataType: "text",
		   success: function(msg){
			   if (msg.indexOf('failed')>-1) {
					alert ('The submission failed. Please contact Yen+ Help');
					Recaptcha.reload();
					return;
				} else if (msg.indexOf('expired')>-1) {
					alert ('The submission failed, possibly the form has been open too long. Please refresh the page and try again.');
					Recaptcha.reload();
					return;
				} else {
					$('#invoice').val(msg);
				}
			   
			   if (trialflag) {
				   window.location='thankyoutrial.php';
				} else {
					document.forms["ppform"].submit();   
			   }
		   },
			error:function (){
			   alert('error');
			}
		});
	}

	function ajaxYenDbSubmit2() {
		
		var ajaxUrl = "interface/ajax_postsubscribe_proc.php";		
		$('#custom').val('uname='+$("#uname").val());
		var ajaxData = $("#postsubform").serialize();

		$.ajax({
		   type: "POST",
		   url: ajaxUrl,
		   data: ajaxData,
		   dataType: "text",
		   success: function(msg){

			   if (msg.indexOf('failed')>-1) {
					alert ('The submission failed. Please contact Yen+ Help');
					Recaptcha.reload();
					return;
				} else if (msg.indexOf('expired')>-1) {
					alert ('The submission failed, possibly the form has been open too long. Please refresh the page and try again.');
					Recaptcha.reload();
					return;
				} else {
					$('#invoice').val(msg);
				}

				document.forms["ppform2"].submit();   
		   },
			error:function (){
			   alert('error');
			}
		});
	}



	function ajaxCheckUname(submit) {
	
		if (submit==false) {
			if (!$("#regform").validate().element( "#uname" )) {
				return;	
			}
		}

		var ajaxUrl = "interface/ajax_check_new_id.php";
		var ajaxData = "uname="+$('#uname').val();


		$.ajax({
		   type: "POST",
		   url: ajaxUrl,
		   data: ajaxData,
		   dataType: "text",
		   success: function(msg){

				if ((msg.indexOf("false")>-1) && (submit==false)) {
					alert("Email address available");
				} else if ((msg.indexOf("false")>-1) && (submit==true)) {
				
					if ($("#trial").val()=='') {
						ajaxYenDbSubmit(false);
					} else {
						ajaxCheckTrial();
					}
				
				} else {
					alert("Email already registered, please try logging in");
					Recaptcha.reload();
					return false;
				}
			 
			 },
			error:function (){
			   alert('error');
			}
		});	
	}

	function ajaxCheckTrial() {
		var ajaxUrl = "interface/ajax_check_trial.php";		
		var ajaxData = "trial="+$("#trial").val();

		$.ajax({
		   type: "POST",
		   url: ajaxUrl,
		   data: ajaxData,
		   dataType: "json",
		   success: function(msg){
			   if (msg.valid=="true") {
				   ajaxYenDbSubmit(true);
				} else {
					alert("Invalid Trial Code");
					Recaptcha.reload();
					return false;
				}
			 },
			error:function (){
			   alert('error');
			}
		});	
	}


	function ajaxStatusCheck() {
		
		var ajaxUrlStatus = "interface/ajax_subscr_status.php";
		
		$.ajax({
		   type: "POST",
		   url: ajaxUrlStatus,
		   data: "subscr_id="+subscrId,
		   dataType: "text",
		   success: function(msg){
			   intCntTmp++;
			   if (intCntTmp>10) {
					$("#status").html("Your subscription did not complete. Please check your PayPal account.");
					clearInterval(statusInt);
					return false;
				}
			   
			   //$("#status").html(msg);
			   if (msg.indexOf("active")>-1) {
				   $("#status").html(msg);
					clearInterval(statusInt);
					$('#thankyouholder').show();
					return false;
				} else {
					$("#status").html(msg+" - "+intCntTmp+" tries");
				}
		   },
			error:function (){
			   alert('error');
			}
		});
		
	}

	function captchaAjax() {

		var c = Recaptcha.get_challenge();
		var r= Recaptcha.get_response();
		var i=jsip;

		$.ajax({
			type: 'POST',
			url: 'interface/ajax_captcha.php',
			data: "challenge="+c+"&response="+r+"&remoteip="+i,
			dataType: 'text',
			success: function(s) {
				captchaHandle(s);
			},
			error:function (xhr, ajaxOptions, thrownError){
				alert(xhr.status);
				alert(thrownError);
			} 
		});
		
		 return false;
	}

	function captchaHandle(s) {
		if (s.indexOf('captchaconfirmation')>-1) {
			ajaxCheckUname(true);
		} else {
			alert('The reCaptcha answer was not correct. Please try again.');
			Recaptcha.reload();
			return false;
		}
	}
	
});
