/*
	Cadets Squadron finder application
	
	
*/


/**
	regionMapOver

*/





function regionMapOver(id,copyText){
	//alert(copyText);
	$("#"+id).bt(copyText,
		
	 {
		fill: '#FFF',
		cornerRadius: 10,
		strokeWidth: 0,
		shadow: true,
		shadowOffsetX: 3,
		shadowOffsetY: 3,
		shadowBlur: 8,
		shadowColor: 'rgba(0,0,0,.9)',
		shadowOverlap: false,
		noShadowOpts: {strokeStyle: '#999', strokeWidth: 2},
		positions: ['left', 'top']
	  }
	);
}





/**
	action
	This is the function called on all links if the app is in AJAX mode

*/
function action(link,map){

	var params = link.href.split("?")[1];
	
	//alert(params);
			
	// do some jquery stuff to change the div

	$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+params);
	$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+params);
	
	
	if(params.indexOf('post/true')<0){ // don't refresh the squadronGalley Area if were in Post mode
		$("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+params);
	}
	if(map)	{
		//alert("update map " +params);
		ajaxLoadMap();
		$("#mapPanel").load("cad_squadronfinder_ajax_provider_mapPanel.cfm?"+params);
	}
	
	//alert(link.href);
	

}

/* this seems to be a duplicate function
function mapClick(state){
	alert("map click: " +state);
	
	//alert(state.substr('post/true'));
	
	$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+state);
	//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+state);
	$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+state);
	
	if(!state.indexOf('post/true')){ // don't refresh the squadronGalley Area if were in Post mode
	  $("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+state);
	}
	
}
*/

function mapWingClick(state){
	//alert("map wing click: " +state)
	$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+state);
	//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+state);
	$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+state);
	
	$("#mapPanel").load("cad_squadronfinder_ajax_provider_mapPanel.cfm?"+state);
	
	if(state.indexOf('post/true')<0){ // don't refresh the squadronGalley Area if were in Post mode
	  $("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+state);
	}
}

/**
	filter action, we need to create the state to send back to the 

*/
function filterAction()
{
	alert("filter");
}


function regionChange(){
	
	
	if($("#post").val().length>0){ // we are showing the post screen
		var postVal = "/post/true";
	} else
	{
		var postVal ="";
	}

		
	//alert($("#regionOption").val());
	// create state
	var state = "region/"+$("#regionOption").val()+postVal;
	$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+state);
	//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+state);
	$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+state);
	
	if($("#post").val().length <= 0){ // dont update the thumbs panel if in post mode
	$("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+state);
	}
	
	ajaxLoadThumbs();
	$("#mapPanel").load("cad_squadronfinder_ajax_provider_mapPanel.cfm?"+state);

}

function wingChange(){
	
	if($("#post").val().length){ // we are showing the post screen
		var postVal = "/post/true";
	} else
	{
		var postVal ="";
	}
	
	var state = "region/"+$("#regionOption").val()+"/wing/"+$("#wingOption").val() + postVal;
	
	//alert("wing change: " + state);


	
	$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+state);
	//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+state);
	$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+state);
	if($("#post").val().length <= 0){ // dont update the thumbs panel if in post mode
	  $("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+state);
	}
	ajaxLoadThumbs();
	$("#mapPanel").load("cad_squadronfinder_ajax_provider_mapPanel.cfm?"+state)

}

function squadronChange(){
	
	//alert($("#post").val())
	
	if($("#post").val().length){ // we are showing the post screen
		var postVal = "/post/true";
	} else
	{
		var postVal ="";
	}
		
	var state = "region/"+$("#regionOption").val()+"/wing/"+$("#wingOption").val()+"/squadron/" + $("#squadronOption").val() + postVal ;
	
	//alert("squadron change: "+ state);

	$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+state);
	//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+state);
	$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+state);
	if($("#post").val().length <= 0){ // dont update the thumbs panel if in post mode
	  $("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+state);
	}
	ajaxLoadThumbs();
	$("#mapPanel").load("cad_squadronfinder_ajax_provider_mapPanel.cfm?"+state)
}


function playVideo(id){
	//alert("Play this video " + id);
	$('#dialog').load("cad_squadronfinder_ajax_provider_videoPlayer.cfm?id=" + id);
	$('#dialog').jqmShow();

}

function closeVideoDialog(id){
	$('#dialog').jqmHide();

}

// posn
// postcode or squadron number
function posnClick(posn){

	// try and get an improved lat and long from google and pass back to the backend
	var s = new GlocalSearch();
	var state = "";
	s.setSearchCompleteCallback(null, function(){
		if(s.results[0]){
			//alert(s.results[0].lat +" " + s.results[0].lng);
			state += "/posn/" + $("#posn").val() + "/postcode_lat/" + s.results[0].lat + "/postcode_lng/" + s.results[0].lng
		
		}else{
			state += "/posn/" + $("#posn").val();	
		}
		
		//alert(state)
		posnLoad(state);
	
	});
	s.execute(	$("#posn").val() + ",uk" );

}

// called from Posn Click after it gets data back from google
function posnLoad(state)
{
	
	state = escape(state);
		
	$("#mapPanel").load("cad_squadronfinder_ajax_provider_mapPanel.cfm?"+state);
	$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+state);
	
	ajaxLoadThumbs();
	//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+state);
	
	$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+state);
	$("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+state);
}


function hiliteMap(value)
	{
		switch(value)
		{
			case "south_west":
			$("#mapImg").attr("src","../images/cad_sfinder_map_southwest.jpg");
			break;
			
			case "london_and_south_east":
			$("#mapImg").attr("src","../images/cad_sfinder_map_southeast.jpg");
			break;

			case "central_and_east":
			$("#mapImg").attr("src","../images/cad_sfinder_map_centraleast.jpg");
			break;

			case "wales_and_west":
			$("#mapImg").attr("src","../images/cad_sfinder_map_waleswest.jpg");
			break;

			case "north":
			$("#mapImg").attr("src","../images/cad_sfinder_map_north.jpg");
			break;

			case "scotland_and_northern_ireland":
			$("#mapImg").attr("src","../images/cad_sfinder_map_scotni.jpg");
			break;

		default:
			$("#mapImg").attr("src","../images/cad_sfinder_map_national.jpg");

		}
		

	}
	function unhilite()
	{
		$("#mapImg").attr("src","../images/cad_sfinder_map_national.jpg");
	}
	
	
	/*
	 mapClick()
	 marker clicked
	
	*/
	function mapClick(value)
	{
		
		//alert(value);
		//alert(value.indexOf('post/true'))
		$("#mapInfo").load("cad_squadronfinder_ajax_provider_mapInfo.cfm?"+value);
		 ajaxLoadThumbs();
		//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+value);
		$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+value);
		
		if(value.indexOf('post/true')<0){ // don't refresh the squadronGalley Area if were in Post mode
		  $("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+value);
		}

	
	}

	function ajaxLoadThumbs(){
	  $("#videoThumbpanel").html("<div style=\"height:200px;padding-top:100px;\" align=\"center\"><img src='../images/ajax-loader.gif'>");

	}

	function ajaxLoadMap(){
	  $("#mapPanel").html("<div style=\"height:200px;padding-top:100px;\" align=\"center\"><img src='../images/ajax-loader.gif'>");

	}

	function galleryClick(link)
	{
		ajaxLoadThumbs();
		var params = link.href.split("?")[1];
		//alert(params);
		//$("#squadronGallery").load("cad_squadronfinder_ajax_provider_squadronGallery.cfm?"+params);
		$("#filters").load("cad_squadronfinder_ajax_provider_filter.cfm?"+params);
		$("#videoThumbs").load("cad_squadronfinder_ajax_provider_videoThumbs.cfm?"+params);
	
	}

	// called when the URL post form is submitted
	function updateState()
	{
		
		// build the state
		$("#region").val( $("#regionOption").val());
		$("#wing").val( $("#wingOption").val());
		$("#squadron").val( $("#squadronOption").val());
		
		
		//$("#postFormState").val("this is a test value");
		return true;
	
	}

	/*	
	VideoVote
	Handles the voting for each video thumnail, called by clicking on the star rating under each thumb

	*/
	function videoVote(val)
	{
		//alert(val);

		$.get("cad_squadronfinder_ajax_provider_voting.cfm", { voteVal: val  }, 
		 function(data)
		 {
			var returnData = data.replace(/^\s+|\s+$/g, '') ; //trim whitespace
			var votesSoFar = returnData.split("|")[0];
			var avgStar = returnData.split("|")[1];
			var videoid = returnData.split("|")[2];
			
			// update the voting panel
			$("#videoVoteTotal"+videoid).html(votesSoFar + " votes so far");
			var starClass = ".star"+videoid;
			//alert(starClass);
			$(starClass).rating('disable');
			
			

		 }
		);
	
	}

 // called from the homepage resolves the lat and long in the form fields, then submits the form
function resolveLatLong(){
	//alert("resolve");
	var s = new GlocalSearch();
	s.setSearchCompleteCallback(null, function(){
			if(s.results[0]){
			//alert("got lat");
			$("#hpLat").val(s.results[0].lat);
			$("#hpLng").val(s.results[0].lng);
			$("#eventSearch").submit();

		}else{
			$("#eventSearch").submit();
		}
		
	});
	s.execute(	$("#posn").val() + ",uk" );
	return false;
}
	
    function searchPostcode(){

            

          

            

 

            // try and get an improved lat and long from google and pass back to the backend

            var s = new GlocalSearch();

            var state = "";

            s.setSearchCompleteCallback(null, function(){

                        

                        

                        

                        if(s.results[0]){

                                    

                                    document.location = "http://www.raf.mod.uk/aircadets/findasquadron/?posn/" + $("#posn").val() + "/postcode_lat/" + s.results[0].lat + "/postcode_lng/" + s.results[0].lng

                        

                        }else{

                                    document.location = "http://www.raf.mod.uk/aircadets/findasquadron/?posn/" + $("#posn").val()

                        }

                        

                        

            

            

            });

            

            s.execute(         $("#posn").val() + ",uk" );

            

 

 

 

}

	
