var scrollHandler;
var maxScroll;
var scrollSpeed;
var scrollLock=false;

function isValidEmailAddress(emailAddress) {
	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
	return pattern.test(emailAddress);
}

function isNumeric(value) {
	var pattern = new RegExp(/^[0-9]{1,8}$/i);
	return pattern.test(value);
}

function lightsOut(){
	if ($('#transp').size()==0){     
		$('body').append('<div id="transp"></div>');
	}    
	if ($(document).height()>$(window).height()){
		$('#transp').css('height',$(document).height()+"px");
	}else{
		$('#transp').css('height',$(window).height()+"px");
	}
	$('#transp').css('width',$(document).width()+"px");

	/*
	$('body').append('<div id="waiting"><img src="/design/royal_canin/img/dots_w_bg.gif" width="36" height="36" /> a processar</div>');	
	
	$('#waiting').ready(function(){
		
		var deltaX=($(window).width()-$('#waiting').width())/2;
		var deltaY=($(window).height()-$('#waiting').height())/2;
		$('#waiting').css('marginLeft',($(document).scrollLeft()+deltaX)+"px");
		$('#waiting').css('marginTop' ,($(document).scrollTop()+deltaY)+"px");
		
	});
	*/
	
 }
 
 function lightsIn(){
	$('#transp').remove();
	//$('#waiting').remove();
 }


function doScroll(){
	var currentPos=Math.abs(parseInt($('#scrollWindow div.handler').css('marginTop')));
	if (scrollDirection==1){
		if (currentPos<maxScroll){
			var offset=$('#scrollWindow').offset();
			//$('#scrollUp').css('top',offset.top+'px');
			//$('#scrollUp').css('left',offset.left+'px');				
			$('#scrollUp').show();
			
			var newPos=currentPos+scrollSpeed*scrollDirection;
			if (newPos>maxScroll){
				newPos=maxScroll;
			}
			
			//$('#scrollWindow div.handler').animate({marginTop:'-'+(newPos)+'px'},249,'linear');			
			$('#scrollWindow div.handler').css('marginTop','-'+(newPos)+'px');
		}else{				
			//$('#scrollDown').hide();
			endScroller();
		}
	}else{
		if (currentPos>0){
			//$('#scrollDown').show();
			var newPos=currentPos+scrollSpeed*scrollDirection;
			if (newPos<0){
				newPos=0;
			}
			//$('#scrollWindow div.handler').animate({marginTop:'-'+(newPos)+'px'},249,'linear');
			$('#scrollWindow div.handler').css('marginTop','-'+(newPos)+'px');
		}else{			
			$('#scrollUp').hide();
			endScroller();
		}
	}
}

function startScroller(){
	scrollHandler=setInterval('doScroll()',25);
}

function endScroller(){
	clearInterval(scrollHandler);
}

function showScrollBars(){
	$('#scrollDown').show();
	
	$('#scrollUp').mouseenter(function(event){			
		if (scrollLock) return;
		scrollDirection=-1;
		startScroller();
	});
	$('#scrollUp').mouseleave(function(event){
		if (scrollLock) return;
		endScroller();
	});
	$('#scrollDown').mouseenter(function(event){
		if (scrollLock) return;
		scrollDirection=1;
		startScroller();
	});
	$('#scrollDown').mouseleave(function(event){
		if (scrollLock) return;
		endScroller();
	});
	
}

function hideScrollBars(){
	$('#scrollUp').hide();
	$('#scrollDown').hide();
	
	$('#scrollUp').unbind();
	$('#scrollDown').unbind();		
}


function adjustScroll(elementSelector){
	if (jQuery.browser.msie && jQuery.browser.version<8){
		return;
	}
	
	$('#scrollWindow div.handler').css('marginTop','0px');
	$('#scrollWindow').css('height','auto');
	var pos=$('#scrollWindow').offset();
	var height=pos.top+$('#scrollWindow').height();
	elementsHeight=$('#scrollWindow').height();
	hideScrollBars();
	
	var strSelection="";
	strSelection="#scrollWindow "+elementSelector;
	scrollSpeed=10;
	
	if(height>$(window).height() && $(strSelection).size()>0){
		
		var element=$(strSelection+':first')
		var delta=element.height()+parseInt(element.css('marginBottom'));
		var extraSpace=50;
		
		var newSize=(Math.floor(($(window).height()-$('#scrollWindow').offset().top-extraSpace) / (delta))*delta);//-parseInt(element.css('marginBottom'));
		if (newSize<delta-parseInt(element.css('marginBottom'))){
			newSize=delta-parseInt(element.css('marginBottom'));
		}
		if (newSize<delta*2){
			newSize=delta*2;
		}
		$('#scrollWindow').css('overflow','hidden');
		$('#scrollWindow').css('height',newSize+'px');
		
		maxScroll=elementsHeight-newSize;//-parseInt(element.css('marginBottom'));
		showScrollBars();		
	}	
	
	$('#scrollingContent').css('visibility','visible');
}


function setInputClasses(selector){
	$(selector).each(function(i){			
		$(this).removeClass('inputPreenchido');
		if (this.value!=""){
			$(this).addClass('inputPreenchido');
		}
	});
}

function clearErrorBox(){
	$('.borderRed').removeClass('borderRed');
	hasErrorEmpty=false;
	$('.errMsg>span').html('');
	$(frmName+'div').removeClass('missing');
}

function addError(fieldName,inputName,message){
	var currentMessage=$('.errMsg>span').html();
	if (currentMessage!=""){			
		currentMessage+="<br /> ";
	}else{
		$(frmName+'input[name='+inputName+']').focus();
	}
	//$(frmName+'input[name='+inputName+']').closest('div').addClass('missing');
	if ($(frmName+'input[name='+inputName+']').closest('span.inputBorder').size()>0){
		$(frmName+'input[name='+inputName+']').closest('span.inputBorder').addClass('borderRed');
	}else if ($(frmName+'input[name='+inputName+']').closest('div.selectDiv').size()>0){
		$(frmName+'input[name='+inputName+']').closest('div.selectDiv').addClass('borderRed');
	}else if ($(frmName+'input[name='+inputName+']').size()==0){
		$(frmName+'input[name='+inputName+']').closest('span.inputBorder').addClass('borderRed');
	}
	currentMessage+='<span class="strong">'+ fieldName +'</span> '+message+'.';
	$('.errMsg>span').html(currentMessage);
}

function addEmptyError(inputName){
	
	var currentMessage=$('.errMsg>span').html();
	if (currentMessage!=""){			
		currentMessage+="<br /> ";
	}else{
		$(frmName+'input[name='+inputName+']').focus();
	}
	//$(frmName+'input[name='+inputName+']').closest('div').addClass('missing');
	if ($(frmName+'input[name='+inputName+']').closest('span.inputBorder').size()>0){
		$(frmName+'input[name='+inputName+']').closest('span.inputBorder').addClass('borderRed');
	}else if ($(frmName+'input[name='+inputName+']').closest('div.selectDiv').size()>0){
		$(frmName+'input[name='+inputName+']').closest('div.selectDiv').addClass('borderRed');
	}else if ($(frmName+'input[name='+inputName+']').size()==0){
		$(frmName+'textarea[name='+inputName+']').closest('span.inputBorder').addClass('borderRed');
	}
	if (hasErrorEmpty) return;
	hasErrorEmpty=true;
	currentMessage+=messageMissing;
	$('.errMsg>span').html(currentMessage);
}

function showErrorBox(){
	var currentMessage=$('.errMsg>span').html();
	if (currentMessage==""){
		$('.errMsg').hide();
		return false;
	}else{
		$('.errMsg').show();
		return true;
	}
}


$(document).ready(function(){
	$('#scrollUp a,#scrollDown a').click(function(event){
		return false;
	});
});


