$(document).ready(function() {
	
	var $nameInput;
	var $phoneInput;	
	var $errorMsg;
	var nameOrigText;
	var phoneOrigText;
	
	// INIT
	$("#callme_ad a.clickhere_btn").click(function(event){
		event.preventDefault();
		
		// Remove the "click here" button
		$("#callme_ad a.clickhere_btn").remove();
		initStage2()
	});
	
	// STAGE 2
	function initStage2() {
		// Set new background
		$("#callme_ad").css("background-image","url(img/callme_ad/ringmeg_bg_2.png)");
		// Add input elements
		$("#callme_ad").append('<form><input class="callme_name_input" type="text" name="name_input" value="Navn"><input class="callme_phone_input" type="text" name="phone_input" value="Telefon" maxlength = "8"><a href="" class="confirm_btn"><span>Bekreft</span></a></form><div class="callme_error_msg">Vennligst fyll ut telefonnummer</div>');
		
		$nameInput = $("#callme_ad .callme_name_input");
		$phoneInput = $("#callme_ad .callme_phone_input");
		$errorMsg = $("#callme_ad .callme_error_msg");
		
		nameOrigText =  $nameInput.val();
		phoneOrigText = $phoneInput.val();
		
		// Select all text when selecting (steal this from orderform).
		$("#callme_ad input[type='text']").click(function() {
			
			hideError();
			
			// If this is the name input and text has not been altered
			if ($(this).hasClass("callme_name_input") && $(this).val() == nameOrigText) {
				$(this).select();
			}
			
			// If this is the phone input and text has not been altered
			if ($(this).hasClass("callme_phone_input") && $(this).val() == phoneOrigText) {
				$(this).select();
			}
		});
		
		// Prevent default event when clicking enter
		$("#callme_ad input[type='text']").keypress(function(event) {
			if (event.keyCode == 13) {
				event.preventDefault();
				$("#callme_ad a.confirm_btn").click();
			}
		});
		
		// Set validation rules
		setValidationRules()
		
		// Add ajax functionality
		$("#callme_ad a.confirm_btn").click(function(event) {
			event.preventDefault();
			if (validate()) {
				submitData();
			}
		});
	}
	
	// SET VALIDATION RULES
	function setValidationRules() {
		$("#callme_ad form").validate({
			rules: {
				name_input:  { required: true},
				phone_input: { minlength: 8, maxlength: 8, digits: true, required: true}
			}
		});
	}	
	
	// VALIDATION
	function validate() {
		// TODO - set up validation rules (always successful now)
		
		// If everything valid
		if ($("#callme_ad form").valid()) {
			return true;
		} 


// If not name valid
                if (!$nameInput.valid() || $nameInput.val() == nameOrigText){
                        displayError("Vennligst skriv inn navn");
                        return false;
                }

	
 if (!$phoneInput.valid() || $phoneInput.val() == phoneOrigText){

		displayError("Vennligst skriv inn telefonnummer");
			return false;
		}
	}
	
	// ERROR MESSAGE
	function displayError(errorMsg) {
		$errorMsg.html(errorMsg);
		$errorMsg.fadeIn("slow");
	}
	
	function hideError() {
		$errorMsg.fadeOut("slow");
	}

	// SUBMIT DATA
	function submitData() {
		$.ajax({
		  type: "POST",
		  url:  "ringmeg/index.php",
		  data: { name: $("#callme_ad .callme_name_input").val(), phone: $("#callme_ad .callme_phone_input").val() },
		  success: function (data) {
			  if ($(data).find("reply").text() == "success") {
			 	 initStage3();
			  } else {
  			 	 //displayError("Vennl1igst pr&oslash;v igjen senere...");
				displayError("Navn og Telefon er allerede registert");
 
			 }			  
		  },
		  error: function () { 
		  	displayError("Vennligst pr&oslash;v igjen senere...")
		  },
		  dataType: "xml"
		});
		
	}
	
	
	
	// STAGE 3
	function initStage3() {
		
		// Remove all elements
		$("#callme_ad a.confirm_btn").remove();		
		$nameInput.remove();
		$phoneInput.remove();
		$errorMsg.remove();
		
		// Change background
		$("#callme_ad").css("background-image","url(img/callme_ad/ringmeg_bg_3.png)");
	}
});
