// JavaScript Document
function verificaCarrinhoLinhas()
{
	var frm = document.frmCarrinhoCompras;
	for(i=0; i<frm.rmProdutos.length;i++)
	{
		frm.rmProdutos[i].checked = frm.chkTodos.checked;
	}
}
function checkout()
{
	var frm = document.frmCarrinhoCompras;
	frm.fazer = 'checkout';
	frm.action = 'moradaEntrega.php'
	frm.submit();
}
function validaFormMoradas()
{
	var frm = document.frmMoradas;
	campo = frm.tipoMorada;
	
	if(campo[0].checked) //Actual
	{
		campo = frm.morada;
		if(isDefined(campo.value))
		{
			campo = frm.localidade;
			if(isDefined(campo.value))
			{
				campo = frm.codPostal4;
				if(isDefined(campo.value) && isNumber(campo.value))
				{
					if(confirm("Confirma os produtos, respectivas quantidades e morada de entrega?")){ frm.submit() };
				}
				else
				{
					alert('Por favor verifique o seguinte erro:\nTem de indicar um código postal válido para a morada indicada.');
					campo.focus();
				}
			}
			else
			{
				alert('Por favor verifique o seguinte erro:\nTem de indicar uma localidade de entrega.');
				campo.focus();
			}
		}
		else
		{
			alert('Por favor verifique o seguinte erro:\nTem de indicar uma morada de entrega.');
			campo.focus();
		}
	}
	else if(campo[1].checked)
	{
		campo = frm.oMorada;
		if(isDefined(campo.value))
		{
			campo = frm.oLocalidade;
			if(isDefined(campo.value))
			{
				campo = frm.oCodPostal4;
				if(isDefined(campo.value) && isNumber(campo.value))
				{
					if(confirm("Confirma os produtos, respectivas quantidades e morada de entrega?")){ frm.submit() };					
				}
				else
				{
					alert('Por favor verifique o seguinte erro:\nTem de indicar um código postal válido para a morada indicada.');
					campo.focus();
				}
			}
			else
			{
				alert('Por favor verifique o seguinte erro:\nTem de indicar uma localidade de entrega.');
				campo.focus();
			}
		}
		else
		{
			alert('Por favor verifique o seguinte erro:\nTem de indicar uma morada de entrega.');
			campo.focus();
		}
	}
	else
	{
		alert('Por favor verifique o seguinte erro:\nTem de ter pelo menos uma morada seleccionada para poder prosseguir.');
	}
}
function mudaTipoMorada(tipo)
{
	var frm = document.frmMoradas;
	
	switch(tipo)
	{
		case 'Actual':
			frm.tipoMorada[0].checked=true;
		break;
		case 'Outra':
			frm.tipoMorada[1].checked=true;
		break;
		default:
			alert('Tipo de Morada não suportado: ' & tipo & '');
		break;
	}
}
function validaFormTiposPagamento()
{
	var frm = document.frmTiposPagamento;
	if(confirm("Confirma o modo de Entrega?")){	frm.submit(); }
}
function isEmail(str)
{
	return true;
	if(str.indexOf('@')>0 && str.length>5 && str.indexOf('.')>str.indexOf('@'))
	{
		return true;
	}
	return false;
}
function isNumber(str)
{
	if (!isNaN(str))
	{
		return true;
	}
	return false;
}
function isDefined(str)
{
	if(str.length>0)
	{
		return true;
	}
	return false;
}
function validaDadosPessoais()
{
	var frm = document.getElementById('frmDadosPessoais');
	/*var frm = document.frmDadosPessoais;*/
	
	campo = frm.email;
	if(isDefined(campo.value) && isEmail(campo.value))
	{
		campo = frm.password;
		campo2 = frm.password2;
		
		if(isDefined(campo.value))
		{
			if(isDefined(campo2.value) && (campo.value==campo2.value))
			{
				campo = frm.nome;
				if(isDefined(campo.value))
				{
					campo = frm.contribuinte;
					if(isDefined(campo.value) && isNumber(campo.value))
					{
						campo = frm.morada;
						if(isDefined(campo.value))
						{
							campo = frm.codPostal4;
							if(isDefined(campo.value) && isNumber(campo.value))
							{
								campo = frm.localidade;
								if(isDefined(campo.value))
								{
									campo = frm.pais;
									if(isDefined(campo.value))
									{
										campo = frm.telefone;
										if(isDefined(campo.value))
										{
											frm.submit();
										}
										else
										{
											alert('Por favor verifique o seguinte erro:\nÉ necessário indicar um Telefone de Contacto.');
											campo.focus();
										}
									}
									else
									{
										alert('Por favor verifique o seguinte erro:\nÉ necessário indicar o País da Morada indicada.');
										campo.focus();
									}
								}
								else
								{
									alert('Por favor verifique o seguinte erro:\nÉ necessário indicar a Localidade da Morada indicada.');
									campo.focus();
								}
							}
							else
							{
								alert('Por favor verifique o seguinte erro:\nÉ necessário indicar o Código Postal da Morada indicada.');
								campo.focus();
							}							
						}
						else
						{
							alert('Por favor verifique o seguinte erro:\nÉ necessário indicar a sua morada.');
							campo.focus();
						}
					}
					else
					{
						alert('Por favor verifique o seguinte erro:\nÉ necessário indicar o seu número de contribuinte.');
						campo.focus();
					}
				}
				else
				{
					alert('Por favor verifique o seguinte erro:\nÉ necessário indicar o seu nome.');
					campo.focus();
				}
			}
			else
			{
				alert('Por favor verifique o seguinte erro:\nÉ necessário repetir a Palavra-Chave, e esta tem de ser igual à Palavra-Chave especificada anteriormente.');
				campo2.focus();
			}
		}
		else
		{
			alert('Por favor verifique o seguinte erro:\nO Campo da Palavra-Chave é Obrigatório e tem de ser válido.');
			campo.focus();
		}
	}
	else
	{
		alert('Por favor verifique o seguinte erro:\nO Campo do E-mail é Obrigatório e tem de ser válido.');
		campo.focus();
	}
}
function validaCarrinhoCompras()
{
	var frm = document.frmCarrinhoCompras;
	
	var diff = false;
	
	if(frm.qtd.value>0)
	{
		if(frm.qtd.value!=frm.qtdh.value)
		{
			diff = true;
		}
	}
	else
	{
		for(i=0; i<frm.qtd.length;i++)
		{
			if(frm.qtd[i].value!=frm.qtdh[i].value)
			{
				diff = true;
			}
		}
	}
	if(diff)
	{
		if(confirm("As quantidades no Carrinho de compras não se encontram actualizadas. Deseja actualizar?"))
		{
			frm.submit();
		}
		else
		{
			return true;
		}
	}
	else
	{
		return true;
	}
	return false;
}
function validaEmail()
{
	var frm = document.frmNovaPassword;
	if(frm.email.value.length>0)
	{
		frm.submit();
	}
	else
	{
		alert('Para recuperar a Palavra-Chave necessita de introduzir um e-mail registado.');
	}
}
