//----------------------------------------------------------------------------------------------------
// Copyright, 2005-2007 AROMA DA TERRA PORTUGAL
// Ficheiro de FUNCOES JAVASCRIPT (AREA RESERVADA)
// 		Criado:		3L	15-NOV-2005
// 		Alterado:	3L	25-SET-2007
//----------------------------------------------------------------------------------------------------

//-----------------------------------------------------------------------------------------
// Função que submete LOGIN
function validarLogin(){
	erro = 0;
	texto = "Por favor verifique: \n";
	i = 1;
	if (!estaPreenchido(formLogin.utilizador)){
		erro = 1;
		texto += "    " + i + ". Utilizador   \n";
		i++;
	}
	if (!estaPreenchido(formLogin.palavraPasse)){
		erro = 1;
		texto += "    " + i + ". Palavra-passe   \n";
		i++;
	}
	
	if (erro == 1) {
		alert(texto);
		return;
	}
	else{
		formLogin.submit();
	}
}

//-----------------------------------------------------------------------------------------
// Função que submete LOGOUT
function validarLogout(){
	if (confirm("Este comando procede ao Logout da Área Reservada. Deseja continuar?")){
		frmLogout.submit();
	}
	else{
		return;
		}
}

//-----------------------------------------------------------------------------------------
// Função que submete PEDIDO
function validarPedido(){
	erro = 0;
	texto = "Por favor verifique: \n";
	i = 1;
	if (formPedido.idArea.value==0){
		erro = 1;
		texto += "    " + i + ". Área (seleccione uma da lista).   \n";
		i++;
	}
	
	// obtemos o numero de linhas para ciclar atraves das mesmas
	linhas = formPedido.linhas.value;
	j = 1;
	while (j <= linhas) {
		// verificamos se e a ultima linha (excepto no caso de ser a unica), dado que estara sempre vazia
		if ((j != linhas) || (j == 1)){
			if (eval("formPedido.idProduto"+j).value==0){
				erro = 1;
				texto += "    " + i + ". Não foi seleccionado o produto (Linha "+j+").   \n";
				i++;
			}
			if (!estaPreenchido(eval("formPedido.quantidade"+j))){
				erro = 1;
				texto += "    " + i + ". Não indicou a quantidade (Linha "+j+").   \n";
				i++;
			}
			if (eval("formPedido.quantidade"+j).value=='0'){
				erro = 1;
				texto += "    " + i + ". Não indicou a quantidade (Linha "+j+").   \n";
				i++;
			}
		}
		j++;
	}
	
	if (erro == 1) {
		alert(texto);
		return;
	}
	else{
			if (confirm("Confirma o pedido efectuado?     \n")){
				// alteramos o valor do campo OPERACAO para INSERIR
				formPedido.operacao.value = 1;
				formPedido.submit();
			}
			else{
				return;
			}
	}
}

//-----------------------------------------------------------------------------------------
// Função que valida a LINHA de PEDIDO após INSERIR O PRODUTO
function validarLinhaPedido(){
	formPedido.operacao.value = 11;
	formPedido.submit();
}


//-----------------------------------------------------------------------------------------
// Função que calcula o TOTAL 
function calculaTotal(linha){
	// calculamos o subTotal para a linha
	preco = String(eval("formPedido.preco"+linha).value);
	preco = preco.replace(",",".");
	preco = Number(preco);
	subTotal = preco * eval("formPedido.quantidade"+linha).value;
	subTotal = subTotal.toFixed(2);
	subTotal = String(subTotal);
	eval("formPedido.subTotal"+linha).value = subTotal.replace(".",",");

	// calculamos os totais
	linhas = formPedido.linhas.value;
	linhas = Number(linhas);
	i = 1;
	quantidadeTotal = 0;
	total = Number("0.00");
	while (i <= linhas) {
		quantidadeTotal += Number(eval("formPedido.quantidade"+i).value);
		subTotal = eval("formPedido.subTotal"+i).value;
		subTotal = subTotal.replace(",",".");
		subTotal = Number(subTotal);
		total += subTotal;
		i++;
	}
	formPedido.quantidadeTotal.value = quantidadeTotal;
	total = total.toFixed(2)
	total = String(total);
	formPedido.total.value = total.replace(".",",");
	return;
}

//-----------------------------------------------------------------------------------------
// Função que consulta o PEDIDO
function consultarPedido(idPedido){
	formPedido.operacao.value = 2;
	formPedido.idPedido.value = idPedido;
	formPedido.submit();
}

//-----------------------------------------------------------------------------------------
// Função que consulta o PRODUTO (Admin)
function eliminarPedido(idPedido){
	formPedido.operacao.value = 5;
	formPedido.idPedido.value = idPedido;
	if (confirm("Este comando elimina o Pedido. Deseja realmente apagá-lo?")){
		formPedido.submit();
	}
	else{
		return;
		}
}


//-----------------------------------------------------------------------------------------
// Função que reenvia o PEDIDO por email
function reenvioPedido(){
	formPedido.operacao.value = 21;
	formPedido.submit();
}

//-----------------------------------------------------------------------------------------
// Função que altera o UTILIZADOR (Admin)
function consultarUtilizador(idUtilizador){
	formDadosPessoais.operacao.value = 21;
	formDadosPessoais.codUtilizador.value = idUtilizador;
	formDadosPessoais.submit();
}

//-----------------------------------------------------------------------------------------
// Função que elimina o UTILIZADOR (Admin)
function eliminarUtilizador(idUtilizador){
	formDadosPessoais.operacao.value = 5;
	formDadosPessoais.codUtilizador.value = idUtilizador;
	if (confirm("Este comando elimina o Utilizador. Deseja realmente apagá-lo?")){
		formDadosPessoais.submit();
	}
	else{
		return;
		}
}

//-----------------------------------------------------------------------------------------
// Função que submete DADOS PESSOAIS
function validarDadosPessoais(){
	erro = 0;
	texto = "Por favor verifique: \n";
	i = 1;
	if (!estaPreenchido(formDadosPessoais.palavraPasse)){
		erro = 1;
		texto += "    " + i + ". Palavra-Passe   \n";
		i++;
	}
	else{
		if (formDadosPessoais.idUtilizador.value==formDadosPessoais.palavraPasse.value) {
			erro = 1;
			texto += "    " + i + ". A Palavra-Passe deverá ser diferente do Utilizador   \n";
			i++;
		}
	}
	if (!estaPreenchido(formDadosPessoais.email)){
		erro = 1;
		texto += "    " + i + ". E-mail   \n";
		i++;
	}
	
	if (erro == 1) {
		alert(texto);
		return;
	}
	else{
		formDadosPessoais.submit();
	}
}

//-----------------------------------------------------------------------------------------
// Função que submete NOVO UTILIZADOR
function validarUtilizador(){
	erro = 0;
	texto = "Por favor verifique: \n";
	i = 1;
	if (formDadosPessoais.operacao.value != 4){
		if (!estaPreenchido(formDadosPessoais.idUtilizador)){
			erro = 1;
			texto += "    " + i + ". Código   \n";
			i++;
		}
		if (!estaPreenchido(formDadosPessoais.nome)){
			erro = 1;
			texto += "    " + i + ". Nome   \n";
			i++;
		}
	}
	
	if (erro == 1) {
		alert(texto);
		return;
	}
	else{
		formDadosPessoais.submit();
	}
}

//-----------------------------------------------------------------------------------------
// Função que consulta o COMUNICADO
function consultarComunicado(idComunicado){
	formComunicado.operacao.value = 1;
	formComunicado.idComunicado.value = idComunicado;
	formComunicado.submit();
}

//-----------------------------------------------------------------------------------------
// Função que consulta o COMUNICADO (Admin)
function eliminarComunicado(idComunicado){
	formComunicado.operacao.value = 5;
	formComunicado.idComunicado.value = idComunicado;
	if (confirm("Este comando elimina o Comunicado. Deseja realmente apagá-lo?")){
		formComunicado.submit();
	}
	else{
		return;
		}
}

//-----------------------------------------------------------------------------------------
// Função que submete COMUNICADO
function validarComunicado(){
	erro = 0;
	texto = "Por favor verifique: \n";
	i = 1;
	if (!estaPreenchido(formComunicado.titulo)){
		erro = 1;
		texto += "    " + i + ". Titulo   \n";
		i++;
	}
	if (!estaPreenchido(formComunicado.texto)){
		erro = 1;
		texto += "    " + i + ". Texto   \n";
		i++;
	}
	if ((!formComunicado.distribuidorGeral.checked) && (!formComunicado.coordenador.checked) && (!formComunicado.director.checked)) {
		erro = 1;
		texto += "    " + i + ". Seleccione o(s) destinatário(s)   \n";
		i++;
	}
	
	if (erro == 1) {
		alert(texto);
		return;
	}
	else{
		formComunicado.submit();
	}
}

//-----------------------------------------------------------------------------------------
// Função que submete DOCUMENTO
function validarDocumento(){
	erro = 0;
	texto = "Por favor verifique: \n";
	i = 1;
	if (!estaPreenchido(formDocumento.titulo)){
		erro = 1;
		texto += "    " + i + ". Titulo   \n";
		i++;
	}
	if (!estaPreenchido(formDocumento.ficheiro)){
		erro = 1;
		texto += "    " + i + ". Ficheiro   \n";
		i++;
	}
	if ((!formDocumento.distribuidorGeral.checked) && (!formDocumento.coordenador.checked) && (!formDocumento.director.checked)) {
		erro = 1;
		texto += "    " + i + ". Seleccione o(s) destinatário(s)   \n";
		i++;
	}
	
	if (erro == 1) {
		alert(texto);
		return;
	}
	else{
		formDocumento.submit();
	}
}

//-----------------------------------------------------------------------------------------
// Função que consulta o DOCUMENTO
function consultarDocumento(idDocumento){
	formDocumento.operacao.value = 1;
	formDocumento.idDocumento.value = idDocumento;
	formDocumento.submit();
}

//-----------------------------------------------------------------------------------------
// Função que consulta o COMUNICADO (Admin)
function eliminarDocumento(idDocumento){
	formDocumento.operacao.value = 5;
	formDocumento.idDocumento.value = idDocumento;
	if (confirm("Este comando elimina o Documento. Deseja realmente apagá-lo?")){
		formDocumento.submit();
	}
	else{
		return;
		}
}


//-----------------------------------------------------------------------------------------
// Função que consulta o PRODUTO
function consultarProduto(idProduto){
	formProduto.operacao.value = 1;
	formProduto.idProdutoC.value = idProduto;
	formProduto.submit();
}

//-----------------------------------------------------------------------------------------
// Função que consulta o PRODUTO (Admin)
function eliminarProduto(idProduto){
	formProduto.operacao.value = 5;
	formProduto.idProdutoC.value = idProduto;
	if (confirm("Este comando elimina o Produto. Deseja realmente apagá-lo?")){
		formProduto.submit();
	}
	else{
		return;
		}
}

//-----------------------------------------------------------------------------------------
// Função que submete PRODUTO
function validarProduto(){
	erro = 0;
	texto = "Por favor verifique: \n";
	i = 1;
	if (!estaPreenchido(formProduto.idProduto)){
		erro = 1;
		texto += "    " + i + ". Referência   \n";
		i++;
	}
	if (!estaPreenchido(formProduto.produto)){
		erro = 1;
		texto += "    " + i + ". Produto   \n";
		i++;
	}
	if (formProduto.idLinhaProduto.value==0){
		erro = 1;
		texto += "    " + i + ". Linha de Produtos   \n";
		i++;
	}
	if (!estaPreenchido(formProduto.preco)){
		erro = 1;
		texto += "    " + i + ". Preço   \n";
		i++;
	}
	
	if (erro == 1) {
		alert(texto);
		return;
	}
	else{
		formProduto.submit();
	}
}

//-----------------------------------------------------------------------------------------
// Função que activa uma classe CSS
function activaClasse(elemento,classe){
	document.getElementById(elemento).className = classe;
}