function $() {
  var elements = new Array();

  for (var i = 0; i < arguments.length; i++) {
    var element = arguments[i];
    if (typeof element == 'string')
      element = document.getElementById(element);

    if (arguments.length == 1)
      return element;

    elements.push(element);
  }

  return elements;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function ismail( oMail ) {
	// Valida oMail como um e-mail, retorna true/false

	//MyRegExp = new RegExp("^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$");
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	return (filter.test(oMail));
}

function fValidaComentar(oForm) {
	var erro = false;
	var erroMsg = "";
	if(oForm.from_name.value.length < 4){
		if (!erro) { oForm.from_name.select(); oForm.from_name.focus(); }
		erro = true; erroMsg += "Digite seu nome\n";
	}
	if(!ismail(oForm.from_mail.value)) {
		if (!erro) { oForm.from_mail.select(); oForm.from_mail.focus(); }
		erro = true; erroMsg += "Digite seu email\n";
	}
	if(oForm.captcha.value.length < 4){
		if (!erro) { oForm.captcha.select(); oForm.captcha.focus(); }
		erro = true; erroMsg += "Digite o texto da imagem embaralhada\n";
	}
	if(oForm.comentario.value.length < 5){
		if (!erro) { oForm.comentario.select(); oForm.comentario.focus(); }
		erro = true; erroMsg += "Digite seu comentário";
	}
	if(erro) {
		 alert(erroMsg);
		 return false;
	} else {
		$('bt_enviar').style.display="none";
		$('enviando').style.display="block";
		return true;
	}
}
function fValidaEnviar(oForm) {
	var erro = false;
	var erroMsg = "";
	if(oForm.from_name.value.length < 4){
		if (!erro) { oForm.from_name.select(); oForm.from_name.focus(); }
		erro = true; erroMsg += "Digite seu nome\n";
	}
	if(!ismail(oForm.from_mail.value)) {
		if (!erro) { oForm.from_mail.select(); oForm.from_mail.focus(); }
		erro = true; erroMsg += "Digite seu email\n";
	}	
	if(oForm.to_mail.value.length < 4){
		if (!erro) { oForm.to_mail.select(); oForm.to_mail.focus(); }
		erro = true; erroMsg += "Digite endereços de email separados por vírgula";
	}	
	
	if(erro) {
		 alert(erroMsg);
		 return false;
	} else {
		$('bt_enviar_amigo').style.display="none";
		$('enviando_amigo').style.display="block";
		//Effect.Appear($("enviando_amigo"), {duration: 0.5});		
		return true;
	}
}

function comentar() {
	goToAnchor("comentarenviar",100);	
}

function enviar_post() {
	/*
	atual_comentar = ( $('form_comentar').style.position != "absolute");
	if (atual_comentar) {			
		//$("form_envio").style.display = "block";
		//Effect.Appear($("form_envio"), {duration: 0.7});		
		$("form_comentar").style.position = "absolute";								
		$("form_envio").style.position = "static";
	}*/
	goToAnchor("comentarenviar", 100);		
}

function notset_defaultsto(theVar, theDefault) {
	if (typeof(theVar)=="undefined") {
		theVar = theDefault;
		return theDefault;
	} else {
		return theVar;
	}
}

function goToAnchor(aname, plus)
{		
	var anchors, i, ele;

	if (typeof(plus)=="undefined") {
		plus = 0;
	}
	

	if (!document.getElementById)
		return false;
		
	// get anchor
	anchors = document.getElementsByTagName("a");
	for (i=0;i<anchors.length;i++) {
		if (anchors[i].name == aname) {
			ele = anchors[i];
			i = anchors.length;
		}
	}
	
	// set scroll target
	if (window.scrollY)
		scrSt = window.scrollY;
	else if (document.documentElement.scrollTop)
		scrSt = document.documentElement.scrollTop;
	else
		scrSt = document.body.scrollTop;

	if (!ele) return false;
	
	scrDist = ele.offsetTop - scrSt;
	scrDur = 500;
	scrTime = 0;
	scrInt = 10;
	
	// set interval
	
	window.scrollTo( 0, scrSt+scrDist+plus );
	return true;
}

function getLoading(id,w,h) {
	id = notset_defaultsto(id, "");		
	w = notset_defaultsto(w, "");		
	h = notset_defaultsto(h, "");		
	style = get_loading_padding(id,w,h);
	//return "<p>carregando...</p>";
	return '<p style="padding:4px;'+style+'"><img src="'+asset_path+'img/load.gif" alt="carregando"/></p>';
}

function get_loading_padding(id, w, h) {
	id = notset_defaultsto(id, "");		
	style = "";
	
	largura = (w == "")?  $(id).offsetWidth : w;
	altura =  (h == "")?  $(id).offsetHeight : h;
	
	if (altura != "") {
		altura -= 16; //load2.gif
		half = parseInt(altura / 2)-1;
		style +=  "padding-top:" + half + "px; padding-bottom: "+ (half-1)  + "px;"
	} else {
		style += "padding-top:6px;";
	}
	if (largura != "") {
		largura -= 16; //load2.gif
		half = parseInt(largura / 2)-1;
		style +=  "padding-left:" + half + "px; padding-right: "+ (half-1)  + "px;"
	} else {
		style += "padding-left:6px;";
	}	
	return style;
}

function ajax_mes(url) {
	//$("loading").style.display = "block";
	//Effect.Appear("loading", {duration: 0.5});
	w = ($('tab_calendario').offsetWidth)? $('tab_calendario').offsetWidth : 130;
	$('calendario').innerHTML = getLoading('calendario', w);
	myAjax = new Ajax.Updater('calendario', url,
		 {method: 'get',
		 	 parameters: 'rand=' + parseInt(Math.random()*99999999), //cache buster
		 	 onSuccess: function() {
		 	 	//Effect.Appear('calendario');		 	 		 	
		 	 	$("calendario").style.display = "block";	
		 	 }
		 });/*
    var myAjax = new Ajax(url,	
    	{	method: 'get', 
    		onComplete: function(responseText, responseXML) {  $('calendario').innerHTML = responseText; },
    		evalScripts: true}  );
    myAjax.request();*/

}

function carregou_mes() {
	alert("carregou_mes");
	
}


function fAtribuiEvento(obj, evType, fn){
	if (obj.addEventListener) obj.addEventListener(evType, fn, true)
	if (obj.attachEvent) obj.attachEvent("on"+evType, fn)
}

js_erro = "";

fAtribuiEvento(window,"load",fIni);

function fIni() {
	MM_preloadImages(asset_path+'imgs/load1.gif');
	if (js_erro != "") {
		eval(js_erro);
	}
	//clf_stat();
	//sifr_setup();
}

function atualiza_forms(enviar) {
	 $('form_envio').style.display = (enviar)? "block" : "none";
	 $('form_comentar').style.display = (enviar)? "none" :  "block";
}
