// JavaScript Document

$(document).ready(function(){
	
	$('select[name="assunto"]').change(function() { assuntoChangeHandler(); });
	
	applyMainFieldsBehaviour();
	assuntoChangeHandler();
	aplicaValidacao();
});

function assuntoChangeHandler() {
	updateAreas();
	updateProdutos();
	updateCurriculo();
} 

function updateAreas() {
	if (pagina=='fale-conosco') {
		if ($('select[name="assunto"]').val()=='RH') $('#div_areas_interesse').slideDown();
		else $('#div_areas_interesse').slideUp();
	}
}
function updateProdutos() {
	if (pagina=='fale-conosco') {
		if ($('select[name="assunto"]').val()=='Dúvidas sobre Produtos') $('#div_form_produtos').slideDown();
		else $('#div_form_produtos').slideUp();
	}
}

function updateCurriculo() {
	if (pagina=='trabalhe-conosco') {
		$("form[name=form_fale]")
			.attr('enctype','multipart/form-data')
			.attr('encoding','multipart/form-data')
		;
	} else if (pagina=='fale-conosco') {
		if ($('select[name="assunto"]').val()=='RH') {
			$("form[name=form_fale]")
				.attr('enctype','multipart/form-data')
				.attr('encoding','multipart/form-data')
			;
			$('#div_curriculo').fadeIn();
		} else {
			$("form[name=form_fale]")
				.removeAttr('enctype')
				.removeAttr('encoding')
			;
			$('#div_curriculo').hide();
		}
	}
}

function aplicaValidacao() {
	//jQuery.validator.messages.required = "Campo obrigatório.";

	/* validação */
	
	var allowedExtensions = new Array('doc','pdf','rtf','txt','zip');
	
	jQuery.validator.addMethod("arquivo", function( value, element ) {
		var result;
		if (this.optional(element)) result = true;
		else {
			result = false;			
			var fn_array = value.split(".");
			var ext = fn_array[fn_array.length-1].toLowerCase();
			var nExts = allowedExtensions.length;
			for (var i=0; i<nExts; i++) {
				if (allowedExtensions[i]==ext) {
					result = true;
					break;
				}
			}
		}
		if (!result) {
			element.value = "";
			var validator = this;
			setTimeout(function() {
				validator.blockFocusCleanup = true;
				element.focus();
				validator.blockFocusCleanup = false;
			}, 1);
		}
		return result;
	}, "Extensões permitidas: "+getListFromArray(allowedExtensions,'ou')+'.');

	
	$("form[name=form_fale]").validate({
		errorPlacement: function(error, element) {
			element.before( error );
		} ,
		invalidHandler: function(e, validator) {
			var errors = validator.numberOfInvalids();
			if (errors) {
				var message = errors == 1
					? 'Um campo obrigatório não foi preenchido'
					: errors + ' campos obrigatórios não foram preenchidos';
				$("div.error span").html(message);
				$("div.error").show();
			} else {
				$("div.error").hide();
			}
		},
		onkeyup: false
	});
}

function getListFromArray(arr,lastSep) {
	var newArr = new Array();
	newArr = newArr.concat(arr);
	var lastEl = newArr.pop();
	return "'"+newArr.join("', '") + "' "+lastSep+" '" + lastEl + "'";
}

