



$(Global);

function Global(){		
	$("#wrapper").children(":not('#map')").hide();
	createFlash();
	updatePoint();
	$('body').append("<div class='modal jqmWindow'>&nbsp;</div>");
	$("a.openModal").click(function(){
		modalAjax(this);
		return false;
	});
	ieFix();
	initSearch();

	if($("body").height() > 750){
		$("#wrapper").height($("body").height());
	}
	$(window).resize(function(){
		if($("body").height() > 650){
			$("#wrapper").height($("body").height());
		}
	})

	jQuery.validator.addMethod("letterswithbasicpunc", function(value, element) {
		return this.optional(element) || /^[a-z-.,()'\"\s]+$/i.test(value);
	}, "Letters or punctuation only please");  
}
function initSearch()
{
	window.searchString = $("#fsearch").val();
	
	$("#fsearch").click(function(){onFocusSearch();});
	$("#fsearch").blur(function(){onBlurSearch();});
	$("#search #ok").click(function(){onClickBotaoOk();});
	$("#search #cancel").click(function(){onClickBotaoCancel();});
}

function onFocusSearch(){
	if( $("#fsearch").val() == searchString ) $("#fsearch").val( "" );
}

function onBlurSearch(){
	if( $("#fsearch").val() == "" ) $("#fsearch").val( searchString );
}

function onClickBotaoOk()
{

	if( $("#fsearch").val() != searchString && $.trim( $("#fsearch").val() ) != "" )
	{
		$("#ok").hide();
		$("#cancel").show();
		$("#flash")[0].search( $("#fsearch").val() );
	}
}

function onClickBotaoCancel()
{
	$("#ok").show();
	$("#cancel").hide();
	$("#fsearch").val( searchString );
	$("#flash")[0].cancelSearch();
}

function createFlash(){
	var flashvars = {
		key: "ABQIAAAAODyQUw2fCrtpE2hDuF5jFhTtnABzJTuu5Rh-7z97inS1rhJa3xSy1ml8yQOb0uSpEaiwIcgLli-kIA",
		bridge : "/brnetwork/opencms/system/modules/com.braziltour.mobile/elements/getBridge.jsp"
	};
	var params = {
		menu: "false",
		scale: "noScale",
		allowFullscreen: "true",
		allowScriptAccess: "always",
		bgcolor: "#FFFFFF",
		wmode: "transparent"
	};
	var attributes = {
		id:"flash"
	};
	swfobject.embedSWF("/brnetwork/opencms/system/modules/com.braziltour.mobile/resources/global/swf/brasilmobile.swf", "swf", "1760", "800", "9.0.0", "/brnetwork/opencms/system/modules/com.braziltour.mobile/resources/global/js/system/modules/com.braziltour.mobile/resources/global/swf/expressInstall.swf", flashvars, params, attributes);
}

function onMapReady(){
	var arr = [];
	
	var items = $("#main-menu a");
	for( var i = 0; i < items.length; i ++ ) arr.push( $( items[ i ] ).attr( "href" ) );
	$("#flash")[0].setCityList(arr);
}

function onMapLoaded(){
	$("#wrapper").children(":not('#map')").fadeIn(1800);
	$("#flash")[0].setCity( $(".rio").attr("href"));
}

function updatePoint(){
	$("#main-menu a").click(function(){
		var url = $(this).attr("href");
		$("#flash")[0].setCity(url);
		return false;
	});
	
}

function modalAjax(elm){
	var close = function(hash) { 
		$(hash.t).show();
		hash.w.hide(); 
		hash.o.remove(); 
	}; 
	var open = function(hash) { 
		hash.w.show();
	};
	var load = function(hash) { 
		if($(hash.t).attr("id") == "download"){
			tabs();
			download();
		};
		if($(hash.t).attr("id") == "devices"){
			devices();
		};
		if($(hash.t).attr("id") == "recommend"){
			formRecommend();
		};
		$(hash.t).hide();
		$(".null").click(function(){
			return false;
		});		
	};
	$('.modal').jqm({
		ajax: $(elm).attr("href"), 
		trigger: $(elm),
		onShow: open,
		onHide: close,
		onLoad: load
	}).jqmShow($(elm));
}

/*================================
Recommend
================================*/
function formRecommend(){
	$("#formRecommend input").focus(function(){
		$(this).select();
		var initVal = $(this).val();
		$(this).change(function(){
			if($(this).val() == ""){
				$(this).val(initVal);
			}
		})
	});


	$("#formRecommend").validate({
		rules: {
			name: {
				required: true,
				letterswithbasicpunc: true
			},
			friendName:{
				required: true,
				letterswithbasicpunc: true
			},
			email: {
				required: true,
				email: true
			}
		},
		messages: {
			email: {
				required: "We need your email address to contact you",
				email: "Your email address must be in the format of name@domain.com"
			}

		},

		submitHandler: function(form){
			var form = $("form");
			var msg = $("div.msg");

			$.ajax({url: form.attr("action"), data: form.serialize(), dataType: "json", complete: function(resp) {
			//$.ajax({url: "/mobile/opencms/system/modules/com.braziltour.mobile/resources/global/inc/send.txt", data: form.serialize(), dataType: "json", success: function(r) {

				var Str = resp.responseText;
				Str = $.trim(Str);
				var r = $.parseJSON(Str);
				
				//console.log(r);

				var rex = /^(ok)/;
				if(rex.exec(r.result)){
					form.hide();
					msg.empty().html("<p><em>"+ r.msg +"</em></p><p>"+r.txt+"</p>");
					msg.fadeIn("slow");
				}else {
					form.hide();
					msg.empty().html("<p class='error'><em>"+ r.msg +"</em></p><p>"+r.txt+"</p>");
					msg.fadeIn("slow");
				}
				$(".msg a.back").click(function(){
					msg.hide();
					form.show();
				});
			}});
		}
	});

};
/*================================
Donwload
================================*/
function tabs(){
	$("#tabs li a").click(function(){	
		var elm = $(this);
		
		if(elm.is(".active")){
			return false;
		}else{
			var tab = '#'+$(this).attr("alt");
			$("#tabs li a").removeClass("active");
			elm.hasClass("active") ? elm.removeClass("active") : elm.addClass("active");

			$('.contaba').removeClass('visible').hide();
			if(tab == '#tab2'){
				$('.devices').hide();
			}
			$(tab).fadeIn();
		}
		return false;
	});
}
function samples(dest){
	var initText = $(".devices .results").html();
	
	var locale = $('input#__locale').val();
	$("a.maior").attr("href", "/brnetwork/opencms/mobile/apljava/"+dest+"maior"+locale+"");
	$("a.menor").attr("href", "/brnetwork/opencms/mobile/apljava/"+dest+"menor"+locale+"");
	$("a.iphone").attr("href", "/brnetwork/opencms/mobile/apljava/"+dest+"iphone");
	
	$(".samples").click(function(){
		$(".devices .results").html(initText);
		$(".devices").fadeIn("fast");
		var res = $(this).siblings("a").attr("class");
		var params = dest + res + "&size=" +res;

		devices(params);
	});
	$(".devices .close").click(function(){
		$(".devices").fadeOut("fast");
	})
}
function download(){
	$("button.ok").click(function(){
		var dest = $("select option:selected").val();
		if(dest != ''){
			$(".destination").hide();
			$(".resolution").fadeIn();
			samples(dest);
		}
		return false;
	});
}

/*================================
Devices
================================*/
function devices(params){

	params == null ? params = 'null' : true;
	locale = $('input#__locale').val();
	$('form select').change(function(){
		$.ajax({
			type: "GET",
			url: '/brnetwork/opencms/system/modules/com.braziltour.mobile/resources/global/inc/results.html?__locale=' + locale + '&apl=' + params+'',
			data: "brand="+$(this).val(),
			success: function(data){
				$('.results').html(data);
			}		
		});
		$('.results').empty().hide();
		$('.results').show();
		$("#modal-wrapper .modal-devices .close").css({'top':'0px'});
		
	});
}

function ieFix(){

	var version = parseInt(jQuery.browser.version);
	if( ($.browser.msie == true ) && (version == 6) ){
		DD_belatedPNG.fix(".fixpng, .modal-download, .modal-recommend, .jqmClose, #tabs li a");
	}else{
		$(".fixpng").removeClass("fixpng");
	}
}
