/*******
Feito por Ressalva
http://www.ressalva.com.sapo.pt
para o RuiTarot
http://www.ruitarot.com.sapo.pt
*******/

var conta=0;
var conta0=0;
var conta1=0;
var conta2=0;
var conta3=0;
var num=0;
var carta1=0;
var carta2=0;
var teste=false;

function numdestino(){
	teste=false;
	
	var ano=prompt("Introduza o seu ano de nascimento?");
	if(ano==null){return;}
	if(ano=="" || ano==null){
		alert("Ano em branco.");
		return;
	}
	else{
		if(ano.length>4 || ano.length<4){
			alert("Ano incorrecto. Escreva com 4 algarismos, exemplo:2007.");
			return;
		}
		else{
			for (var i = 0; i < ano.length; i++) {
				var ch = ano.substring(i, i + 1);
				if (ch < "0" || "9" < ch){
					alert("Incorrecto. Escreva algarismos.");
					return;
				}
		
			}
		}
	}

	var mes=prompt("Introduza o seu mes de nascimento?");
	if(mes==null){return;}
	if(mes=="" || mes==null || eval(mes)>12 || eval(mes)<1){
		alert("Mes em branco ou incorrecto.");
		return;
	}
	else{
		if(mes.length>2 || mes.length<2){
			alert("Mes incorrecto. Escreva com 2 algarismos, exemplo:01.");
			return;
		}
		else{
			for (var i = 0; i < mes.length; i++) {
				var ch = mes.substring(i, i + 1);
				if (ch < "0" || "9" < ch){
					alert("Incorrecto. Escreva algarismos.");
					return;
				}	
			}
		}
	}

	var dia=prompt("Introduza o seu dia de nascimento?");
	if(dia==null){return;}
	if(dia=="" || dia==null || eval(dia)>31 || eval(dia)<1){
		alert("Dia em branco ou incorrecto.");
		return;
	}
	else{
		if(dia.length>2 || dia.length<2){
			alert("Dia incorrecto. Escreva com 2 algarismos, exemplo:01.");
			return;
		}
		else{
			for (var i = 0; i < dia.length; i++) {
				var ch = dia.substring(i, i + 1);
				if (ch < "0" || "9" < ch){
					alert("Incorrecto. Escreva algarismos.");
					return;
				}	
			}
		}
	}



	//calculos
	conta=eval(ano.charAt(3))+eval(mes.charAt(1))+eval(dia.charAt(1));

	if(conta>9){
		if(conta>19){
			conta3=conta-20;
			conta=2+eval(ano.charAt(2))+eval(mes.charAt(0))+eval(dia.charAt(0));
		}
		else{
			conta3=conta-10;
			conta=1+eval(ano.charAt(2))+eval(mes.charAt(0))+eval(dia.charAt(0));
		}

	}
	else{
		conta3=conta;
		conta=eval(ano.charAt(2))+eval(mes.charAt(0))+eval(dia.charAt(0));

	}
	if(conta>9){
		conta2=conta-10;
		conta=1+eval(ano.charAt(1));

	}
	else{
		conta2=conta;
		conta=eval(ano.charAt(1));

	}
	if(conta>9){
		conta1=conta-10;
		conta=1+eval(ano.charAt(0));
		conta0=conta;

	}
	else{
		conta1=conta;
		conta=eval(ano.charAt(0));		
		conta0=conta;

				
	}
	conta=conta0+conta1+conta2+conta3;
	//document.write(conta0+"+"+conta1+"+"+conta2+"+"+conta3+"="+conta);
	num=prompt("Escreva o algarismo "+conta+" e prima ok.");
	obtercarta();
	function obtercarta(){

		if(conta==eval(num)){
			
			if(teste){
				carta2=eval(num.charAt(0))+eval(num.charAt(1));
			}
			else{
				if(conta>21){
					carta1=eval(num.charAt(0))+eval(num.charAt(1));
				}
				else{
					carta1=conta;
				}
				if(carta1>9){
					teste=true;
					conta=carta1;
					num=prompt("Escreva o algarismo "+conta+" e prima ok.");
					obtercarta();
				}
			}
		}
		else{
		
			alert("Incorrecto. Escreva o algarismo correctamente.");
			return;
		}
	}
	if(teste){
		var confirmar=confirm("A sua carta de personalidade = carta "+carta1+"\n A sua carta de destino interior = carta "+carta2+"\nPrima Ok para ver para a sua carta da personalidade!");
		if(confirmar){
			ircarta();
		}
	}
	else{
		var confirmar=confirm("A sua carta de personalidade e de destino interior = carta "+carta1+"\nPrima Ok para ver para a sua carta da personalidade!");
		if(confirmar){
			ircarta();
		}
	}
}

function ircarta(){
	window.location.href="http://www.ruitarot.com.sapo.pt/cartas/carta"+carta1+".htm";
}

function numnome(){
	var soma=0;
	var vogais=0;
	var consoantes=0;
	carta1=0;
	var nome=prompt("Introduza o seu nome completo?");
	if(nome=="" || nome==null){
		alert("Nome em branco.");
		return;
	}
	for (var i = 0; i < nome.length; i++) {
		var ch = nome.substring(i, i + 1);
		if (((ch < "a" || "z" < ch) && (ch < "A" || "Z" < ch)) && ch != ' ') {
			alert("Incorrecto. Escreva letras de A a Z e sem acentos.");
			return;
		}
		if((ch=="a"||ch=="e"||ch=="i"||ch=="o"||ch=="u")&&(ch=="a"||ch=="e"||ch=="i"||ch=="o"||ch=="u")){
			vogais=vogais+tabela(ch);
		}
		else{
			consoantes=consoantes+tabela(ch);
		}
		soma=soma+tabela(ch);	}
		if(soma!=(vogais+consoantes)){
			alert("ERROR");
			return;
		}
		
	num=prompt("Escreva o algarismo "+soma+" e prima ok.");
	obternomecarta();
	function obternomecarta(){

		if(soma==eval(num)){
			for (var i = 0; i < num.length; i++) {
				var ch = num.substring(i, i + 1);
				carta1=carta1+eval(num.charAt(i));
			}
			if(carta1>22){
				alert("Impossivel Calcular");
				return;
			}
		}
		else{
		
			alert("Incorrecto. Escreva o algarismo correctamente.");
			return;
		}
	}
	if(carta1!=0){
		var confirmar=confirm("A sua carta do nome = carta "+carta1+"\nPrima Ok para ver a sua carta");
		if(confirmar){
			ircarta();
		}
	}
}

function tabela(letra){
	switch (letra) {
  		case "a" :
    			return 1;
 		case "b" :
  			return 2;
		case "c" :
    			return 3;
  		case "d" :
    			return 4;
  		case "e" :
    			return 5;
  		case "f" :
    			return 6;
  		case "g" :
    			return 7;
  		case "h" :
    			return 8;
  		case "i" :
    			return 9;
  		case "j" :
    			return 10;
  		case "k" :
    			return 11;
  		case "l" :
    			return 12;
  		case "m" :
    			return 13;
  		case "n" :
    			return 14;
  		case "o" :
    			return 15;
  		case "p" :
    			return 16;
  		case "q" :
    			return 17;
  		case "r" :
    			return 18;
  		case "s" :
    			return 19;
  		case "t" :
    			return 20;
  		case "u" :
    			return 21;
  		case "v" :
    			return 22;
		case "w" :
    			return 23;
		case "x" :
    			return 24;
		case "y" :
    			return 25;
		case "z" :
    			return 26;
  		case "A" :
    			return 1;
 		case "B" :
  			return 2;
		case "C" :
    			return 3;
  		case "D" :
    			return 4;
  		case "E" :
    			return 5;
  		case "F" :
    			return 6;
  		case "G" :
    			return 7;
  		case "H" :
    			return 8;
  		case "I" :
    			return 9;
  		case "J" :
    			return 10;
  		case "K" :
    			return 11;
  		case "L" :
    			return 12;
  		case "M" :
    			return 13;
  		case "N" :
    			return 14;
  		case "O" :
    			return 15;
  		case "P" :
    			return 16;
  		case "Q" :
    			return 17;
  		case "R" :
    			return 18;
  		case "S" :
    			return 19;
  		case "T" :
    			return 20;
  		case "U" :
    			return 21;
  		case "V" :
    			return 22;
		case "W" :
    			return 23;
		case "X" :
    			return 24;
		case "Y" :
    			return 25;
		case "Z" :
    			return 26;
 		default :
   			return 0;
	}
}
