/**
 * @author paulo
 */
var nomes = false;//guardar globalmente os nomes dos que acertaram no sol 
var pActual = 0;
var pTitulo = '';
window.addEvent('domready', function(){
	if ($('wait')){
		$('wait').ef = $('wait').effects({'duration':500}).set({'opacity':0});
	}
	$('msol').ef = $('msol').effects({'duration':1000,'wait':false});
	$('msol').ef.set({'opacity':0});
	$('msol').pos = {x:0,y:0};
	$('msol').livre = true;
	$('msol').addEvent('click',function(){
										
		var a = new Ajax('sol.php',{
						 evalScripts: true
						 }).request();										
										});
	sol.periodical(10000);
	var n = Cookie.get('sorriso');
	if (n){
		getNomes();
		document.title = 'Bem-vindo '+n+' já acertaste no sorriso e fazes parte da lista dos mais curiosos do mundo';
	}
	
	//shadow
	var wShadow = new Element('div');
	wShadow.setStyles({
			'position':'absolute',
			'width':'100%',
			'height':'100%',
			'opacity':0,
			'background':'#333',
			'left':0,
			'z-index':999
					  });
	wShadow.addEvent('click',function(){
					this.ef.start({'opacity':0});
					$('imgHolder').empty();
					$('imgHolder').show(false);
					
									  });
	wShadow.injectTop(document.body);
	wShadow.ef = wShadow.effects({duration:500});
	$('imgHolder').inject(wShadow);
	$('imgHolder').pai = wShadow;
	$('imgHolder').show = function(how){
		if (how){
			this.pai.ef.start({'opacity':0.9});		
			this.setStyle('opacity',1);
		} else {
			this.pai.ef.start({'opacity':0});
			this.setStyle('opacity',0);
			}
	}		
	
});


function getNomes(){
var a = new Ajax('nomes.php',{
					 evalScripts:true,
					 onComplete:function(txt){ 
 				 	  preparaScroll();	
					 }
				 }).request();
};


function scrollNomes(){
	var ul = $('nomesScroller');
	if (!ul) return true;
	var elToRemove = ul.getElement('li');
	var tElement = new Element(elToRemove);	
	tElement.setStyles({'opacity':0});
	var lis = ul.getElements('li');
	var st = function(){
		lis.each(function(el,i){
			el.ef = el.effects({'duration':200,'wait':false});			
			var tp = ((i-1)*20);		
			el.ef.start({'top':tp+'px'});
			});
			  };//st
	var final = function(){
		elToRemove.remove();
		$('nomesScroller').adopt(tElement);
		tElement.setStyles({'top':((lis.length-1)*20)+'px','opacity':1});
	}
	var ch = new Chain();		  
	ch.chain(st);	
//	ch.chain(final);
	ch.callChain();
	ch.callChain();


	return true;
}

function preparaScroll(){
	if (!nomes) return false;
	var ul = new Element('ul',{'id':'nomesScroller'});
	ul.setStyles({'position':'absolute'});
	ul.ef = ul.effects({'duration':500,'wait':true});
	var li = new Element('li');
//	li.setStyles({'position':'absolute','height':'20px','width':'180px','top':0});
	li.setText('Os vizinhos mais curiosos!!!');
	li.inject(ul);
	var i = 0;
	nomes.each(function(n) {
			var li = new Element('li');
	//		li.setStyles({'position':'absolute','width':'180px','height':'20px','top':((i+1)*20)+'px'});
			li.setText(n);
			li.inject(ul);
//			li.idx = i;
			i++;
						});
	$('cScroller').adopt(ul);
	//scrollNomes.periodical(500,this);
   var hor = new Ticker(ul, {
      speed : 500, delay : 500, direction : 'vertical'});
   
}



function sol(){
if (!$('msol').livre) return true;	
var orientacao = $random(0,7);
var steps = $random(100,400);
var px = $random(0,screen.width);
var py =  $random(0,screen.height);
var largura = 60;
var altura = 60;
/*			var px = $random(0, screen.width);
			var py = $random(0, screen.height);			
*/


$('msol').ef.set({'left':px,'top':py});

switch (orientacao){
	case 0: py -= steps;break;
	case 1: py -= (steps/2); 
			px += (steps/2);
			break;
	case 2: px += steps;break;
	case 3: py += (steps/2); 
			px += (steps/2);
			break;
	case 4: py += steps;break;			
	case 5: py += (steps/2); 
			px -= (steps/2);
			break;
	case 6: px -= steps;break;			
	case 7: py -= (steps/2); 
			px -= (steps/2);
			break;	
}

if (px > screen.width-largura) px = 0;
if (py > screen.height-altura) py = 0;
if (px < 0) px = screen.width-largura;
if (py < 0) py = screen.height-altura;

$('msol').livre = false;
$('msol').ef.options.duration = 500;
$('msol').ef.start({'opacity':1}).chain(function(){																	
		$('msol').ef.options.duration = 1000;
		$('msol').ef.options.transition = Fx.Transitions.Elastic.easeOut;
		$('msol').ef.start({'left':px,'top':py}).chain(function(){
			$('msol').ef.duration = 500;
			$('msol').ef.start({'opacity':0});
			$('msol').ef.options.transition = Fx.Transitions.Sine.easeInOut;
			$('msol').ef.options.duration = 1000;
			$('msol').livre = true;			
			});
		});
$('msol').pos.x = px;
$('msol').pos.y = py;
}


function verifica(el){
var frm = $('frmFicha');
var but = $('btnEnviar');
var labels = $$('label.obrigatorio');
var cnt = 0;
labels.each(function(lbl){
		var i = lbl.getNext();			 
		i.removeClass('erroInput');	
		});
if (frm.nome.value.trim() == "" || frm.nome.value.length < 4 ) {cnt++;setErro(frm.nome,'Nome demasiado curto');}
if (frm.cidade.value.trim() == "" || frm.cidade.value.length < 3 ) {cnt++;setErro(frm.cidade,'Nome da cidade demasiado curto');}
if (!isMail(frm.email.value)) {cnt++;setErro(frm.email,'Endereço de email inválido');}
if ((!isNumero(frm.ndeandares.value)) || (frm.ndeandares.value.length < 1) ) {cnt++;setErro(frm.ndeandares,'Espero um número');}

but.disabled = cnt != 0;
}
	
function setErro(i,msg){
	i.addClass('erroInput');
	i.title = msg;	
}


function waitDiv(){
	var w = $('wait');
	w.ef.start({'opacity':1});
}

function inscricaoOk(nome){
	var w = $('wait');
	w.empty();
	w.addClass('ok');
	var h= new Element('h1');
	h.setText('Parabéns '+nome+', acabas de te tornar num dinamizador de Amizade e Partilha! Em breve receberás um email com mais instruções.');
	var b = new Element('button');
	b.setText('Continua a viagem');
	b.addEvent('click',function(){
					document.location.href = '?piso=4';
					});
	h.inject(w);
	b.inject(w);
}

function inscricaoErro(){
	var w = $('wait');
	w.addClass('erro');
	var h= new Element('h1');
	var b = new Element('input',{
						'type':'button',
						'value':'Voltar atrás'				
						});
	b.addEvent('click',function(){document.location.href = document.location.href;});
	h.setText('Ocorreu um erro, por favor tente de novo');
	h.inject(w);
	b.inject(w);	
}

function sendInscricao(){
waitDiv();
var frm = $('frmFicha');
var today=new Date();
var dia = today.getDate();
var mes = today.getMonth();
mes++;
var ano = today.getFullYear();
frm.timestamp.value = dia+'-'+mes+'-'+ano+' '+today.toTimeString().substring(0,8);
var nome = frm.nome.value;
var A = new Ajax('inscricao.php',{
				 'data':frm.toQueryString(),
				 'method':'post',
				 //'update':$('ficha'),
				 'evalScripts':true,
				 onComplete:function(txt){
					if (txt.trim() != 'OK'){//erro
					if (typeof(console) != 'undefined'){
						console.log(txt);
						}
						inscricaoErro();
					} else {//okiedokie
						inscricaoOk(nome);
					}					
				 }
				 }).request();	
}


	
String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

function isNumero(num){
	return 	(num*1 == num);
}

function isMail(email){
	var regex = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/;
    var res = false;
    if (email.trim() != '') {
        res = regex.test(email);
    }
    return res;
}

function startVerifica(){
$('ficha').ef = $('ficha').effects({'duration':1000});
var labels = $$('label.obrigatorio');
labels.each(function(lbl){
	var i = lbl.getNext();
	i.addEvent('keyup',function(){
							verifica(i);				
								}.bind(i));
	verifica(i);
});
}

function showRecorte(recorte){
	var s = window.getSize();
	var i = new Element('img');
	switch (recorte) {//0
	case 0:
		i.src = 'files/timeout.jpg';
	break
	}//switch
	
	if ($('imgHolder').flag) {
		$('imgHolder').flag = false
		$('imgHolder').show($('imgHolder').flag);
	} else {
		i.inject($('imgHolder'));
		$('imgHolder').pai.setStyle('height',s.scrollSize.y);
		$('imgHolder').flag = true;
		$('imgHolder').show($('imgHolder').flag);
		}

	
}

