
	 // FORM VALIDATION
 
	 // apply inline-box only for mozilla
if( jQuery.browser.mozilla ) {
	// do when DOM is ready
	jQuery( function() {
		// search form, hide it, search labels to modify, filter classes nocmx and error
		jQuery( 'form.cmxform' ).hide().find( 'p>label:not(.nocmx):not(.error)' ).each( function() {
			var $this = $(this);
			var labelContent = $this.html();
			var labelWidth = document.defaultView.getComputedStyle( this, '' ).getPropertyValue( 'width' );
			// create block element with width of label
			var labelSpan = $("<span>")
				.css("display", "block")
				.width(labelWidth)
				.html(labelContent);
			// change display to mozilla specific inline-box
			jQuerythis.css("display", "-moz-inline-box")
				// remove children
				.empty()
				// add span element
				.append(labelSpan);
		// show form again
		}).end().show();
	});
};


jQuery.validator.setDefaults({
	submitHandler: function() { 
		iBox.show();
		$('preloaderBorder').innerHTML = '';
		$('preloaderBorder').innerHTML = '<img id="pleaseWaitGIF" src="media/images/pleaseWait.gif" />';
		//alert('me fui');
	subject
	
	}
});

jQuery().ready(function() {
	// validate the comment form when it is submitted
	jQuery("#commentForm").validate();
	
	// validate signup form on keyup and submit
	jQuery("#signupForm").validate({
		rules: {
			nombres: "required",
			apellidos: "required",
			empresa: "required",
			cargo: "required",
			telefono: {
				required: true,
				number: true				
			},
			celular: {
				required: true,
				number: true				
			},
			username: {
				required: true,
				minlength: 0
			},
			password: {
				required: true,
				minlength: 5
			},
			confirm_password: {
				required: true,
				minlength: 5,
				equalTo: "#password"
			},
			email: {
				required: true,
				email: true
			},
			url: {
				required: true,
				url: true
			},
			topic: {
				required: "#newsletter:checked",
				minlength: 2
			},
			agree: "required"
		},
		messages: {
			nombres: "Please enter your Name",
			apellidos: "Please enter your Last Name",
			empresa: "Por favor ingrese su Empresa",
			cargo: "Por favor ingrese su Cargo",
			telefono: {
				required: "Ingrese su n&uacute;mero convencional",
				number: "Ingrese solo n&uacute;meros sin espacios"
				
			},
			celular: {
				required: "Ingrese su n&uacute;mero celular",
				number: "Ingrese solo n&uacute;meros sin espacios"
				
			},
			username: {
				required: "Please enter a username",
				minlength: "Your username must consist of at least 2 characters"
			},
			password: {
				required: "Please provide a password",
				minlength: "Your password must be at least 5 characters long"
			},
			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: {
				required: "Please enter your mail adress",
				email: "Please enter a valid E-mail Adress"
				
			},
			agree: "Please accept our policy"
		}
	});
	
	// propose username by combining first- and lastname
	jQuery("#username").focus(function() {
		var firstname = jQuery("#firstname").val();
		var lastname = jQuery("#lastname").val();
		if(firstname && lastname && !this.value) {
			this.value = firstname + "." + lastname;
		}
	});
	
	// check if confirm password is still valid after password changed
	jQuery("#password").blur(function() {
		jQuery("#confirm_password").valid();
	});
	
	//code to hide topic selection, disable for demo
	var newsletter = jQuery("#newsletter");
	// newsletter topics are optional, hide at first
	var inital = newsletter.is(":checked");
	var topics = jQuery("#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);
	});
});
