var Landing = function() {
	var dlLink = false;
	var popupEnable = false;
	function roundNumber(num, dec) {
		var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
		return result;
	}

	function updateTimer(){
		var timer = $("#timmer");
		var waittime = timer.html();
		if(waittime > 0){
			waittime -= 0.1;
			timer.html(roundNumber(waittime, 1));
			setTimeout("Landing.updateTimer()",100);
		} else {
			setTimeout("Landing.submitAfter()", 1000);
		}
	}

	function clickDownloadLink(){
		$('#createTokenForm').submit(function(){
			$('#createTokenFormSubmit').attr('disabled', 'disabled');
			return true;
		});
	}

	function ready(downloadLink){
		$("#premiumBtn").click(function(){
			$("#premiumForm").submit();
			return false;
		});
		
		$("#premiumBtn2").click(function(){
			$("#premiumForm2").submit();
			return false;
		});
		
		dlLink = downloadLink;
		$("#regularBtn").click(function(){
			//dl2captcha("captchaValue");
			$("#regularBtn").unbind('click');
			$("#regularBtn").click(function(){
				//postCaptcha("captchaValue");
				//alert("submitCaptcha");
				submitCaptcha();
			});
			//showCaptcha();
			checkDownload();
		});
	}

	function submitAfter(){
		$.post(dlLink, {'downloadLink': 'show'}, function(data) {
			if(data == 'fail'){
				location.reload(true);
			 }else if( data == 'fail404'){
			 	location.href = '/error-404.html';
			 }else{
				$("#regularLoading").hide();
				$("#regularBtn2").show();
				
				$("#regularBtn2").click(function(){
					$("#regularBtn2").unbind('click');
					$("#regularForm").submit();
					return false;
				});
				$("body").append(data);
			}
		});
	}
	
	return {
		ready : ready,
		updateTimer : updateTimer,
		clickDownloadLink : clickDownloadLink,
		submitAfter : submitAfter,
		checkDownload : checkDownload
	};

	function showTimmer() {
		$("#captchaArea").css("display","none");
    	$("#downloadBox1").hide();
		$.post(dlLink, {'downloadLink': 'wait'}, function(data) {
			if(data == 'fail'){
				location.reload(true);
			 }else if( data == 'fail404'){
			 	location.href = '/error-404.html';
			 }else{			
				$("#downloadBox2").show();
				$("#regularBtn").unbind('click');
				$('#timmer').html(data);
				$("#regularLoading").show();
				$("#regularBtn").hide();
                scroll(0, 0);
				updateTimer();
			}
		});
	}
	
	function submitCaptcha() {
		$.ajax({
			type: "POST",
			url: "/checkReCaptcha.php",
			data: ({
				recaptcha_challenge_field:$("#recaptcha_challenge_field").val(),
				recaptcha_response_field:$("#recaptcha_response_field").val(),
				recaptcha_shortencode_field:$("#recaptcha_shortencode_field").val()
			}),
			success: function(msg){
				if (msg=="success") {
					showTimmer();
				} else if (msg=="captcha-fail") {
					submitErrorForm('captchaFail');
				}  else {
					showCaptcha();
				}
			}
		});
	}
	
	function checkTimeLimit() {
		$.ajax({
			type: "POST",
			dataType: "text",
			data: "checkTimeLimit=check",
			success: function(data){
				if (data==1) {
					$('body').append('<form id="regularForm3" method="post"><input type="hidden" name="checkTimeLimit" value="showError"/></form>');
					$("#regularForm3").submit();
				} else {
					showCaptcha();
				}
			}
		});
	}
	
	function checkDownload() {
		$.ajax({
			type: "POST",
			dataType: "json",
			data: "checkDownload=check",
			success: function(json){
				if(json.fail != undefined){
					submitErrorForm(json.fail, json.waitTime);
					return false;
				}else if(json.success != undefined){
					switch(json.success){
						case 'showCaptcha':
							$("#regularBtn").unbind('click');
							$("#regularBtn").click(function(){
								submitCaptcha();
								return false;
							});				
							showCaptcha();
							break;
						case 'showTimmer':	
							showTimmer();
							break;
					}
				}
			}
		});
	}
	
}();

function submitErrorForm(errorType, waitTime) {
	var regularForm3 = '<form id="regularForm3" method="post"><input type="hidden" name="checkDownload" value="showError"/>';
	regularForm3 += '<input type="hidden" name="errorType" value="'+errorType+'"/>';
	if(waitTime != undefined)
		regularForm3 += '<input type="hidden" name="waitTime" value="'+waitTime+'"/>';
	regularForm3 += '</form>';
	$('body').append(regularForm3);
	$("#regularForm3").submit();
}

function showCaptcha() {
    var RecaptchaOptions = {
        theme: 'custom',
        lang: 'en',
        custom_theme_widget: 'recaptcha_widget',
        callback: function(){$('#captchaArea').show();Recaptcha.focus_response_field;}
    };
    Recaptcha.create(reCAPTCHA_publickey,
        "captchaArea", RecaptchaOptions);
}

