jQuery.noConflict();
jQuery(document).ready(function() {

	// funcao para testar se elemento existe.
	jQuery.fn.exists = function () {
		return jQuery(this).length > 0 ? true : false;
	};
	
	// funcao para manter dois elem com height igual
	// o terceiro parametro e opcional e server para
	// fazer uma subtracao se necessario.
	var getPadding = function(elem, parent, minusBorder) {
		if(jQuery(elem).exists() && jQuery(parent).exists()) {
			var size = parseFloat(jQuery(elem).height());
			var padding = 0;
			var padd;
			var paddPosition = ["Top","Bottom"];
			for (var i = 0; i < paddPosition.length; i++) {
				padd = parseFloat(jQuery(elem).css("padding"+paddPosition[i]).replace("px", ""));
				jQuery(parent).css("padding"+paddPosition[i], padd);
			}
			if(minusBorder === undefined) {
				jQuery(parent).height(size);
			} else {
				jQuery(parent).height(size - minusBorder);
			}
		}
		return false;
	}
	getPadding("div.info", "dl.info-map", 2);
	getPadding("div.info", "dl.info-map");

	// Retira o valor do campo input com o evento click
	// e quando ativa o evento blur o mesmo testa se
	// existe algum valor novo no campo e o mantem,
	// caso contrario retorna o valor anterior.
	var submitEmail = jQuery("#newsletterEmailField");
	var saveValue = submitEmail.val();
	submitEmail.click(function() {
		jQuery(this).attr('value','');
	});
	submitEmail.blur(function(){
		if (jQuery(this).attr('value') === '') {
			jQuery(this).attr('value',saveValue);
		}
	});

	// Add atributo para link externo
	var linkExterno = function (link) {
		link.attr('target','_blank');
	}
	linkExterno(jQuery('a[rel|=external]'));

	//Login
	try {
		//Border Radius			
		jQuery('.boxCorner').corner('5px'); 
		jQuery('.buttonCorner').corner('5px'); 
		jQuery('.addressCorner').corner('tr br 5px');
		jQuery('.dealCorner').corner('tl tr 5px');
		jQuery('.loginckCorner').corner('tl 5px');
		jQuery('.loginbcCorner').corner('tr 5px');
		jQuery('.sideCorner').corner('bl br 5px');
	} catch (ex) {
		// silent
	}
	
	jQuery('a[name=modal]').click(function(e) {
		e.preventDefault();
		
		var id = jQuery(this).attr('href');
	
		var maskHeight = jQuery(document).height();
		var maskWidth = jQuery(window).width();
	
		jQuery('#mask').css({'width':maskWidth,'height':maskHeight});

		jQuery('#mask').fadeIn(100);	
		jQuery('#mask').fadeTo(100,0.5);	
	
		//Get the window height and width
		var winH = jQuery(window).height();
		var winW = jQuery(window).width();
              
		//jQuery(id).css('top',  winH/4-jQuery(id).height()/2);
		jQuery(id).css('left', winW/2-jQuery(id).width()/2);
	
		jQuery(id).fadeIn(100); 
	
	});
	
	jQuery('.window .close').click(function (e) {
		e.preventDefault();
		
		jQuery('#mask').hide();
		jQuery('.window').hide();
	});			
	
	// Modal Cartões
	
	jQuery('a[name=modal-card]').click(function(e) {
		e.preventDefault();
		
		var id = jQuery(this).attr('href');
	
		var maskHeight = jQuery(document).height();
		var maskWidth = jQuery(window).width();
	
		jQuery('#mask-card').css({'width':maskWidth,'height':maskHeight});

		jQuery('#mask-card').fadeIn(100);	
		jQuery('#mask-card').fadeTo(100,0.5);	
	
		//Get the window height and width
		var winH = jQuery(window).height();
		var winW = jQuery(window).width();
              
		jQuery(id).css('top',  winH/2-jQuery(id).height()/2);
		jQuery(id).css('left', winW/2-jQuery(id).width()/2);
	
		jQuery(id).fadeIn(100); 
	
	});
	
	jQuery('.window-card .close').click(function (e) {
		e.preventDefault();
		
		jQuery('#mask-card').hide();
		jQuery('.window-card').hide();
	});		
	
	jQuery('#mask-card').click(function () {
		jQuery(this).hide();
		jQuery('.window-card').hide();
	});	

});

function maskPhone(phoneField,currentEvent){
	var eventKey = currentEvent.which;
	if (eventKey == 8 || eventKey == 37 || eventKey == 39 || eventKey == 46) return;	
	
	var value = phoneField.value;
	var cleanRE = new RegExp("\\D", "g");
	value = value.replace(cleanRE, "");

	value = value.replace(/^0{0,}/, "");
	
	var dif = 0;
	if (value[0] == '0'){
		dif = 1;
	}

// Use this if prefix can has 5 numbers:	
//	if (value.length > (10+dif)){
//		value = '('+value.substr(0,2+dif)+') '+value.substr(2+dif,5)+ '-' + value.substr(7+dif,value.length);
//	} else 
	if (value.length > 5+dif) {
		value = '('+value.substr(0,2+dif)+') '+value.substr(2+dif,4)+ '-' + value.substr(6+dif,4);
	} else if (value.length > 2+dif) {
		value = '('+value.substr(0,2+dif)+') '+value.substr(2+dif,value.length);
	} else if (value.length == 2+dif) {
		value = '('+ value +')';
	} else if (value.length > 0) {
		value = '('+ value;				
	}
	
	phoneField.value = value.substr(0,16);
}

	function maskCep(cepField, currentEvent){
		var eventKey = currentEvent.which;
		if (eventKey == 8 || eventKey == 37 || eventKey == 39 || eventKey == 46) return;	
		
		var value = cepField.value;
		var cleanRE = new RegExp("\\D", "g");
		value = value.replace(cleanRE, "");
		
		//xxxxx-xxx
		if(value.length > 5)
			value = value.substr(0,5) + '-' + value.substr(5,value.length);
		
		cepField.value = value.substr(0,9);
		
	}
	
	function isNumberKey(evt)
	{
		var character = getEventKeyChar(evt);
		if (character.match(/[\d\b\t]/)){ return true; }
		return false;
	}

	function isCharacterKey(evt)
	{
		var character = getEventKeyChar(evt);
		if (character.match(/[\D\b\t]/)){ return true; }
		return false;
	}

	function getEventKeyChar(evt)
	{
		var charCode = (evt.which) ? evt.which : evt.keyCode
		var character = String.fromCharCode(charCode);
		return character;
	}
	
	function checkEmail(email)
	{
		if (email.match(/^[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$/)) {
			return true;
		}
		return false;
	}

	function copyFieldGroup(fromGroupName, toGroupName){
		
		copyFields(fromGroupName, toGroupName, 'input');
		copyFields(fromGroupName, toGroupName, 'select');
		
		return false;
	}
	
	function copyFields(fromGroupName, toGroupName, fieldType)
	{
		var fromInputs = jQuery('#'+fromGroupName).find(fieldType);
		var toInputs = jQuery('#'+toGroupName).find(fieldType);
		
		for (var i=0; i < fromInputs.length; i++) {
			var fieldId = fromInputs[i].id;
			var fieldValue = fromInputs[i].value;
			
			for (var x=0; x < toInputs.length; x++) {
				var toFieldId = toInputs[x].id;
				if (toFieldId.match('^'+fieldId+'.*') != null){
					jQuery('#'+toFieldId).attr('value', fieldValue);
					break;
				}
			}
		}
	}
	
