jQuery.validator.addMethod("alphanumeric", function(value, element) {
//    return this.optional(element) || /^\w[\w\d\s]*$/.test(value);
return this.optional(element) || /^[0-9a-z-.,\s]+$/i.test(value);
	}, "Letters, numbers, spaces or underscores only");  
	
jQuery.validator.addMethod("alphanumeric2", function(value, element) {
//    return this.optional(element) || /^\w[\w\d\s]*$/.test(value);
return this.optional(element) || /^[0-9a-z_]+$/i.test(value);
	}, "Letters, numbers or underscores only");  



$().ready(function() {
	
	
	// validate signup form on keyup and submit
	$("#bukutamuform").validate({
		rules: {
			
			pass: {
				required: true,
				minlength: 5,
				alphanumeric2:true
			},
			confirm_password: {
				required: true,
				minlength: 5,
				equalTo: "#pass"
			},
			
			zip:{ 
				 required: true,
				 number: true
			},
			
				 
			name:{
				required:true,
				minlength: 5,
				alphanumeric:true
			},
			kota:"required",
			title:"required",
			file:"required",
			keterangan:{
				required:true,
				alphanumeric:true
			},
			province:"required",
			country:"required",
			address:{
				required:true,
				alphanumeric:true
			},
			msg:{
				required:true,
				minlength: 10,
				alphanumeric:true
			},
			phone:{ 
				 required: true,
				 number: true
			},
			email: {
				required: true,
				email: true
			}
		},
		messages: {
			name: {
					required:"Please enter your fullname",
					alphanumeric:"Letters, numbers, spaces or underscores only"
			},

			password: {
				required: "Please provide a password",
				minlength: "Your password must be at least 5 characters long",
				alphanumeric2:"Letters, numbers or underscores only"
			},
			confirm_password: {
				required: "Please provide a password",
				minlength: "Your password must be at least 5 characters long",
				equalTo: "Please enter the same password as above"
			},
			email: "Please enter a valid email address",
			kota: "Please enter your city",
			province:"please enter your province",
			phone: {
			    required: "Please provide a phone number",
				number: "Must number"
			}
		}
	});
	

	// propose username by combining first- and lastname
	$("#username").focus(function() {
		var firstname = $("#firstname").val();
		var lastname = $("#lastname").val();
		if(firstname && lastname && !this.value) {
			this.value = firstname + "." + lastname;
		}
	});
	
	// check if confirm password is still valid after password changed
	$("#password").blur(function() {
		$("#confirm_password").valid();
	});
	
	//code to hide topic selection, disable for demo
	var newsletter = $("#newsletter");
	// newsletter topics are optional, hide at first
	var inital = newsletter.is(":checked");
	var topics = $("#newsletter_topics")[inital ? "removeClass" : "addClass"]("gray");
	var topicInputs = topics.find("input").attr("disabled", !inital);
	// show when newsletter is checked
	newsletter.click(function() {
		topics[this.checked ? "removeClass" : "addClass"]("gray");
		topicInputs.attr("disabled", !this.checked);
	});


	$("#contact-form").validate({
		rules: {
			
			name: {
				required: true,
				alphanumeric:true
			},
			email: {
				required: true,
				email: true
			},
			phone:{
				number:true
			},
			code:{
				required:true
			},
			msg:{ 
				 required: true,
				 alphanumeric:true
			}
			
		},
		messages: {
			name: {
					required:"Please enter your fullname",
					alphanumeric:"Letters, numbers, spaces or underscores only"
			},
			email: "Please enter a valid email address",
			phone: "Must be Number!",
			code: "Required!",
			msg: {
					required:"Please enter your message",
					alphanumeric:"Letters, numbers, spaces or underscores only"
			}
		}
	});

});

function getXMLHttp()
	{
  		var xmlHttp
	  	try
	  	{
		//Firefox, Opera 8.0+, Safari
			xmlHttp = new XMLHttpRequest();
	  	}
	  	catch(e)
	  	{
		//Internet Explorer
			try
			{
		 		 xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
			}
			catch(e)
			{
		  		try
		 		{
					xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
		  		}
		  		catch(e)
		  		{
					alert("Your browser does not support AJAX!")
					return false;
		  		}
			}
	  	}
	  	return xmlHttp;
	}
	
	function get_city(country){
		
		if(country=='Indonesia'){
			var xmlHttp = getXMLHttp();
			xmlHttp.onreadystatechange = function()
			{
				if(xmlHttp.readyState == 4)
				{
				
				 document.getElementById("city_div").innerHTML=xmlHttp.responseText;
				 
				}
			}
			//xmlHttp.abort();	
			
	
			xmlHttp.open("GET", "/web/include/get_city.php", true);
			xmlHttp.send(null);
		}
		else{
			document.getElementById("city_div").innerHTML="<select name='kota'><option value=''>Other</option></select>";
		}
	}


