// JavaScript Document


 // Initiate
 
 var isMobile_boo = false;
 var currentSection_str;
 var flashIntroDone_boo = false;
 var flashLoaded_boo = false;
 var isRunningIE6OrBelow = false;
 
 var peopletabs
 
 var programmeIsLoaded = false;
 var internshipIsLoaded = false;
  
$(document).ready(function() {
	
	 
		
		if($(window).width()<770 || isRunningIE6OrBelow==true){
			isMobile_boo = true;
		}else{
			$('#section_container').css('display','none');	
		}
		

	

		
		
   
	 
	 setPageSize()
	 
	 // apply actions to the nav links
	 
	 $('#nav a').click(function(){
		
		if(isMobile_boo==true){
			var u = this.href.split('#');
			var l = '#'+u[1]
			//alert(l);
			mobileScrollTo(l);
			return false;
		}else{
			var u = this.href.split('#');
			var l = '#'+u[1]
			//alert(l);
			navScrollTo(l);
			return false;
		};
	 });


	 // Fix last row of tables
	 
	 // $("tr:last").addClass("last_row");	

	
	/// end people specific	
			
			
			
	$(".programme_link").click(function(){
		loadProgramme($(this).attr('href'));
		return false;
	});
	
	$(".internship_link").click(function(){
		loadInternship($(this).attr('href'));
		return false;
	});
	
	
	if(isMobile_boo == true){
		$(".apply_button").click(function(){
			mobileScrollTo("#apply");
			return false;
		});
		$(".back_menu_button").click(function(){
			mobileScrollTo("#wrapper");
			return false;
		});
		$(".home_page_button").click(function(){
			mobileScrollTo($(this).attr('href'));
			return false;
		});
		
		$(".scroll_link").click(function(){
			mobileScrollTo($(this).attr('href'));
			return false;
		});

	}else{
		$(".apply_button").click(function(){
			navScrollTo("#apply");
			return false;
		});
		$(".home_page_button").click(function(){
			navScrollTo($(this).attr('href'));
			return false;
		});
		$(".scroll_link").click(function(){
			navScrollTo($(this).attr('href'));
			return false;
		});
		
	}
		
	
	
	
	
	
	
	// Creates the selection process accordion
	
	
	$('#selction_accordion h4').click(function() {
		$('.accordion_content').slideUp('slow');
		$('#selction_accordion h4').removeClass('active');
		$(this).next().slideToggle('slow');
		$(this).addClass('active');
		
		return false;
	})


	
	
	//$.address.crawlable();
	
	
	
	
	
	// Checks for deeplinking and bypasses the flash if needs be
	
	if (swfobject.hasFlashPlayerVersion("10.0.0")) {

		 var flashVars = {};
		
		if($.address.hash()!==''){
			//alert('trigger flash done');
			flashIntroDone();
			//alert($.address.hash());
			//goStrightToSection(id)
			flashVars.deeplink = searchAndReplace($.address.hash(),'#','');
			flashVars.deeplink = searchAndReplace(flashVars.deeplink,'/','');
		}else{
			
		}
		
		 var params = {};
			 params.allowfullscreen = 'false';
			 params.allowscriptaccess = 'always';
			 params.wmode='opaque'
			if ($.browser.msie) {
				//alert('browaser is ie');
			}else{
			 swfobject.embedSWF("flash/wheelnav.swf", "wheelnav", "1000", "600", "10", "Scripts/expressInstall.swf",flashVars,params); 
			}
		
	}else{
		$('#flash_container').html('<div id=wheelnav></div>')
	}
	
	
	// Adress change tracker

	$.address.change(function(event) {  
		
			
				//alert('event.value.'+event.value);
				
				if(event.value.indexOf(currentSection_str)==-1){
					
					var temp_str = event.value
					
					temp_str = searchAndReplace(temp_str,'#','');
					temp_str = searchAndReplace(temp_str,'/','');
					
					
					if(isMobile_boo == true){
						if(temp_str.length== 0){
							mobileScrollTo('#wrapper')
						}else{
							mobileScrollTo('#'+temp_str)
						}
						
					}else{
						if(temp_str.length== 0){
							navScrollTo('#home')
						}else{
							navScrollTo('#'+temp_str)
						}
					}
				
					// tracking
					track(temp_str);
				}
				
				
		
			
		
	});
	 $(window).resize(function(){
		 ///alert('resize');
		if(isMobile_boo==false){
			setPageSize() 
			goStrightToSection(currentSection_str)
		}
	 })
 
	
	
	$("#apply_frame a").click( function() {
	 alert('apply ready');
	  $("#apply .section_content").scrollTop(0);
	
	});

	
	
	
	
	
 });

function scrollContentTo(link){

	goToByScroll(link)
	
}

var srollOveride_boo = false;

function goToByScroll(id){
	
		
	
	if(id !== currentSection_str){
		track(id)
	}
	
	currentSection_str = id
	srollOveride_boo = true;	

	var to_pos = parseFloat($('#section_container').css('marginTop'))-$(id).offset().top
	$('#section_container').animate({marginTop:(to_pos)},1000,'easeInOutQuad',function(){
			if ($.browser.msie) {
				$('#video2_holder').css('display','block');
			};
	
			srollOveride_boo=false;
		});
    $.address.value(id);  
	
	
	
	// Check if it is apply that is clicked and makes sure that the 
	if(id == '#apply' || id == '#home' ){
		//$('#apply_frame').attr('src', 'joblist/list.html');
		//window.frames["apply_frame"].location.reload();
		//alert('fade out');
		$('#footer_apply_button').fadeOut('slow');
	}else{
		$('#footer_apply_button').fadeIn('slow');	
	}
	
	if(id=='#our_programmes' && programmeIsLoaded == true){
		unLoadProgramme()	
	}
	if(id=='#internships' && internshipIsLoaded == true ){
		unLoadInternShip();
	}
	
	


	
}
function navScrollTo(id){
	if(id !== currentSection_str){
		track(id)
	}
	
	
		
		
		
	
	
		// Check if it is apply that is clicked and makes sure that the 
		if(id == '#apply' || id == '#home'){
			//$('#apply_frame').attr('src', 'joblist/list.html');
			//window.frames["apply_frame"].location.reload();
			//alert('fade out');
			$('#footer_apply_button').fadeOut('slow');
		}else{
			$('#footer_apply_button').fadeIn('slow');	
		}
		
		if(id=='#our_programmes' && programmeIsLoaded == true){
			unLoadProgramme();
		}
		
		if(id=='#internships' && internshipIsLoaded == true ){
			unLoadInternShip();
		}
	
	
	//alert('NavSroll: '+id);
	if($('#section_container').css('display')=='none'){
			
	}else{
	currentSection_str = id
	srollOveride_boo = true;
	var to_pos = parseFloat($('#section_container').css('marginTop'))-$(id).offset().top
	
	
	$('#section_container').animate({marginTop:(to_pos)},1000,'easeInOutQuad',function(){
		if ($.browser.msie) {
			$('#video2_holder').css('display','block');
		};
		srollOveride_boo=false;
		});
		
	}
	LinkToActionscript(id);
	$.address.value(id);  
	
	
		// Sroll pages scroll pages up
		$('.section_content').animate({scrollTop:0});
		
	
}

function mobileScrollTo(id){
	
	if(id !== currentSection_str){
		track(id)
	}
	
	currentSection_str = id;
	
	 //var to_pos = parseFloat($('#section_container').css('marginTop'))-$(id).offset().top
	try{
		 var to_pos = $(id).offset().top;
		 // alert('to_pos:'+to_pos);
		 $('html, body').animate({scrollTop:to_pos});	
		 $.address.value(id);  
		 
	} catch(e){
	
	}
	 
}


function goStrightToSection(id){
	try{
		var to_pos = parseFloat($('#section_container').css('marginTop'))-$(id).offset().top;
		$('#section_container').css('marginTop',(to_pos));
	}catch(e){
	
	}
}






	
function searchAndReplace(in_str,what_str,with_str){
		
		var search_array = new Array();
			search_array = in_str.split(what_str);
			
			return search_array.join(with_str);
		
		
	}



 
 
 function setPageSize(){
	 
	 if(isMobile_boo==false){
		  $('#wheel_menu').css('height',($(window).height()-161)); 
		  $('#wheelnav').css('height',($(window).height()-161)); 
		  $("#section_scroll_holder").css('height',($(window).height()-39));
		  $('.section').css('height',$(window).height()-161); 
			 // sorts out the scollable area on template 1
		  $('.section_content').css('height',($(window).height()-171)); 
		  
		   if ($.browser.msie) {
				 $("#ieFlash").css('height',($(window).height()-161));
				 
		   }
		  
		    
	 }

	  
	  
 }
 
 
 
 // Load external programme page
 
 
function loadProgramme(str){
	
	if(isMobile_boo==false){
		
		programmeIsLoaded = true;
		
		$("#loading_animation").css('display','block');
		
		$('#our_programmes > .section_content').fadeTo(500,0.1,function(){;	
				//alert('loading program');
			
		})
		
	   $.get(str, function(data) {
		//alert('Load was performed.');
	   $('#programme_page_holder').html(''+data);
	  
		$("#programme_tab_holder").tabs(
		{
   			show:function(){
				 $('#programme_tab_holder > .tab_container').scrollTop(0)
				}
		});
			
		
		$('.programme_section').css('height',($(window).height()-120));
		//$('.section').css('height',$(window).height()-132); 
		
		
		var tab_position = $('#programme_tab_holder').position();
		var programme_postion = $('#our_programmes').position()
		var programme_tab_postion = tab_position.top-programme_postion.top
		
		//var position = $('#tab_holder').position();
		//alert(programme_tab_postion);
		
		var h = ($(window).height()-90)-programme_tab_postion
		
		$('#programme_tab_holder > .tab_container').css('height',h);
	
		
		//alert('document is ready');
		
		$(".programme_back_link").click(function(){
			unLoadProgramme();
			return false;
		});
		
		//alert('program loaded');
		$("#loading_animation").css('display','none');
	   
	});
	
	
		$('#programme_page_holder').css('display','block');
		$('#programme_page_holder').css('marginLeft',500)
		$('#programme_page_holder').css('marginRight',-500)
		$('#programme_page_holder').animate(
		{marginLeft:0,
		width:500
		},
		500,
		'easeOutQuad',
		function(){
			//complete; 
			});
	
	
	
	}else{
		//alert('mobile');	
		
		$('#programme_page_holder').load(str,function(){
			//alert('page loaded');
			$("#programme_tab_holder").tabs();
			$('#programme_page_holder').css('display','block');
			$('#our_programmes .section_content').animate({scrollTop:0});
			
			$(".programme_back_link").click(function(){
				unLoadProgramme();
				return false;
			});
			mobileScrollTo('#our_programmes');
			});
			
			
			
	}
	
	//navScrollTo('#our_programmes')
}

function unLoadProgramme(){
	//$('#programme_page_holder').fadeOut();
	
	
	if(isMobile_boo==false){
		programmeIsLoaded = false;
		
		$('#programme_page_holder').css('marginLeft',0)
		$('#programme_page_holder').animate(
		{marginLeft:500},
		500,
		'easeInQuad',
		function(){
			//complete; 
			$('#programme_page_holder').html('');
			$('#programme_page_holder').css('display','none');
			$('#our_programmes > .section_content').fadeTo(500,1);
			
			});
			
		//navScrollTo('#our_programmes')
		
	}else{
		$('#programme_page_holder').css('display','none');
		//mobileScrollTo('#our_programmes')
		
	}
}






function loadInternship(str){
	
	
	if(isMobile_boo==false){
		
	   internshipIsLoaded =true;
		
	   $.get(str, function(data) {
		//alert('Load was performed.');
	   $('#internship_page_holder').html(''+data);
	  
		$("#internships_tab_holder").tabs(
		{
   			show:function(){
				 $('#internships_tab_holder > .tab_container').scrollTop(0)
				}
		});
			
		
		$('.programme_section').css('height',($(window).height()-120));
		//$('.section').css('height',$(window).height()-132); 
		
		
		var tab_position = $('#internships_tab_holder').position();
		var programme_postion = $('#internships').position()
		var programme_tab_postion = tab_position.top-programme_postion.top
		
		//var position = $('#tab_holder').position();
		//alert(programme_tab_postion);
		
		var h = ($(window).height()-90)-programme_tab_postion
		
		$('#internships_tab_holder > .tab_container').css('height',h);
		
		//alert('document is ready');
		
		$(".internship_back_link").click(function(){
			unLoadInternShip();
			return false;
		});
		
	   
	});
	
	
		$('#internship_page_holder').css('display','block');
		$('#internship_page_holder').css('marginLeft',500)
		$('#internship_page_holder').css('marginRight',-500)
		$('#internship_page_holder').animate(
		{marginLeft:0,
		width:500
		},
		500,
		'easeOutQuad',
		function(){
			//complete; 
			});
	
	$('#internships > .section_content').fadeTo(500,0.1,function(){;	
	})
	
	}else{
		//alert('mobile');	
		
		$('#internship_page_holder').load(str,function(){
			//alert('page loaded');
			$("#internships_tab_holder").tabs();
			$('#internship_page_holder').css('display','block');
			
			
			$(".internship_back_link").click(function(){
				unLoadInternShip();
				return false;
			});
			mobileScrollTo('#internships');
			});
			
	}
	
	//navScrollTo('#our_programmes')
}

function unLoadInternShip(){
	//$('#internship_page_holder').fadeOut();
	
	if(isMobile_boo==false){
		
		internshipIsLoaded = false;
		
		$('#internship_page_holder').css('marginLeft',0)
		$('#internship_page_holder').animate(
		{marginLeft:500},
		500,
		'easeInQuad',
		function(){
			//complete; 
			$('#internship_page_holder').html('');
			$('#internship_page_holder').css('display','none');
			$('#internships > .section_content').fadeTo(500,1);
			
			});
			
		//navScrollTo('#internships')
	}else{
		$('#internship_page_holder').css('display','none');
	}
}
 
 
 
 
 
 
  
 
  // Talk to Flash
 

	
	var get_movie = function(id) {
    var movie = null;
   	 if ($.browser.msie) {
        movie = window['ieFlash'];
        //movie = document.getElementById('wheelnav');
   	 } else {
        movie = document[id];
   	 }
   	 return movie;
	};

	
	function sendDegToActionscript(str) 
	{
		//getFlashMovie('wheelnav').sendDegToActionscript(str);
		
	}
	
	function LinkToActionscript(str) 
	{		
		if(flashLoaded_boo==true){
			var  sendLinkToActionscript;
			 if ($.browser.msie) {
				  try{
					 window['ieFlash'].sendLinkToActionscript(str);
					 }catch(err){
				 	// Sometimes gives an error if the flash is not loaded 
				 }
			 }else{
				 try{
				 get_movie('wheelnav').sendLinkToActionscript(str);
				 }catch(err){
				 	// Sometimes gives an error if the flash is not loaded 
				 }
			 }
			 
		}
	}



function flashIntroDone(){
	//alert('Flash animation is done');
	if(flashIntroDone_boo != true){
		
		$('#flash_container').width(470);
		$('#section_container').fadeIn(3000,null,function(){
			//alert('faded in');
			 if ($.browser.msie) {
				   
			 }else{
				//goToByScroll(currentSection_str);
				//LinkToActionscript(currentSection_str);
			 }
		});
		if($.browser.msie) {
			//navScrollTo(currentSection_str)
		}
		
		setPageSize();
		
		/// Builds the video carousel
		buildVideoCarousel();
	}
	flashIntroDone_boo = true;
	
	
	
	
}

function flashLoaded(){
	if(flashIntroDone_boo==false){
		$('#section_container').css('display','none');
	}
	flashLoaded_boo = true
	setPageSize();
}


/// 


// Tracking



function track(str){
	
	var ebRand = Math.random()+'';
	ebRand = ebRand * 1000000;
	
	
	if(str.indexOf('about_us')!=-1){
		document.getElementById('scriptDivCS').innerHTML = "<iframe id=\"trackingFrame\" src=\"tagging/aboutus.htm\"></iframe>";
	}
	if(str.indexOf('our_programmes')!=-1){
		document.getElementById('scriptDivCS').innerHTML = "<iframe id=\"trackingFrame\" src=\"tagging/opportunities.htm\"></iframe>";
	}
	if(str.indexOf('apply')!=-1){
		document.getElementById('scriptDivCS').innerHTML = "<iframe id=\"trackingFrame\" src=\"tagging/apply.htm\"></iframe>";
	}
	if(str.indexOf('internships')!=-1){
		document.getElementById('scriptDivCS').innerHTML = "<iframe id=\"trackingFrame\" src=\"tagging/interns.htm\"></iframe>";
	}
	
}
