/*
	Classe: Funções Gerais
	Descrição: Todas as funcionalidades do projeto.
	Autor: Ted k'
	Empresa: Agência OFF
	URL: http://www.agenciaoff.com/
*/
function Funcoes(){

	/*
		Método: URL
		Descrição: Retorna a URL do campo hidden.
	*/
	Funcoes.prototype.url = function(){
		var url = $("#url").val();
		return url;
	}


	/*
		Método: Contrutor
		Descrição: Chama todas as funções em page load.
	*/
	Funcoes.prototype.construct = function(){
		$(function(){
			func.scrollPage();
			func.cornerBorder();
			func.divBox();
			func.jcarousel();
			func.validar();
		});
	}


	/*
		Método: Scroll
		Descrição: Ativa o Scroll na página.
	*/
	Funcoes.prototype.scrollPage = function(){
		$(".scroll").jScrollPane({showArrows: true});
	}


	/*
		Método: Bordas Arredondadas
		Descrição: Carrega as bordas arredondadas.
	*/
	Funcoes.prototype.cornerBorder = function(){
		$(".corners").corner("17px");
		$(".corners-menor").corner("10px");
	}


	/*
		Método: DivBox
		Descrição: Chama o box do MSN.
	*/
	Funcoes.prototype.divBox = function(){
		var altura = $(document).height();
		$("#mask").css("height", altura + "px");
		$("#msn-box").css("top", (($(window).height() / 2) + 60) + "px");

		$("#inferior-contato-msn").click(function(){
			$("#mask, #msn-box").fadeIn(500);
			$("html, body").animate({
				scrollTop: $("#menu").offset().top
			}, 800);
		});

		$("#mask").click(function(){
			$("#mask, #msn-box").fadeOut(500);
		});
	}


	/*
		Método: Carousel
		Descrição: Chama o Carousel da Home.
	*/
	Funcoes.prototype.jcarousel = function(){
		$("#destaque-slide").jcarousel();

		$("#banner-home-caixa").codaSlider({
		   autoSlide: true,
		   autoSlideInterval: 6000,
		   autoSlideStopWhenClicked: true,
		   dynamicArrows: false,
		   dynamicTabs: false
		});

		$("#carousel-interna").cycle({
		   fx: "scrollHorz",
		   prev: "#single-slide-bt-ant",
		   next: "#single-slide-bt-pro"
		});
	}


	/*
		Método: Plus Validate
		Descrição: Validando Formulario.
	*/
	Funcoes.prototype.validar = function(){
		$("#formulario-contato").plusvalidate({
			animation: {
				type : "alert"
			},

			nome: {
				message: "Preencha o campo Nome",
				min: 3,
				minMessage: "Esse campo não pode ter menos de 3 caracteres"
			},

			email: {
				message: "Preencha o campo E-mail",
				required: "email",
				requiredMessage: "Esse campo precisa ter um email eletronico"
			},
			
			telefone: {
				message: "Preencha o campo Telefone"
			},
			
			mensagem: {
				required: "textarea",
				requiredMessage: "Preencha o campo Mensagem!"
			}
		});
	}
}

/*
	Chamando os métodos da Classe e do jQuery.
	Retorna os valores atuais.
*/
var func = new Funcoes();
func.construct();
