/***gallery***/

document.ss = {
	pause : 5000,
	speed : 600,
	context : '#gallery',
	position : 0,
	slides : ''
};

function buildSlideshow() {

	document.ss.slides = $( 'div', '#gallery_wrapper' );
	
	document.ss.thumbs = $( '#gallery_thumbs img' );
	
	document.ss.arr = $.makeArray( document.ss.slides );
	//console.log( document.ss.arr );
	
	$.each( document.ss.thumbs, function( i, el ) {
	
		$( el )
		.data( 'position', i );
		
		$( document.ss.arr[i] )
		.css('display','none')
		.removeClass('jhide');
		
		//console.log($(el).data('position'));
		
		$( el ).click( function () {
		//console.log( document.ss.arr[document.ss.position] );
		
			$( document.ss.arr[document.ss.position] ).fadeOut( document.ss.speed );
			
			document.ss.position = $( el ).data( 'position' );
			
		//console.log( document.ss.arr[document.ss.position] );
			$( document.ss.arr[document.ss.position] ).fadeIn( document.ss.speed );

			
		} );
		
	} );
		
	document.ss.len = $( document.ss.arr ).length;
	
	$( document.ss.arr[0] )
		.fadeIn( document.ss.speed );

	/* if( document.ss.arr.length > 1 ) { 
		setInterval( "slideTo();", document.ss.pause ); } */
}

/***swfobject***/

function buildFlash(){

var flashvars = {};

var params = {
  bgcolor : "#000000",
  loop : true,
  allowfullscreen : false,
  scale : 1,
  quality : 'high'
};

var attributes = {
  id: "frontpage_flash",
  name: "frontpage_flash"
};

swfobject.embedSWF( document.globals.siteUrl + 'application/swf/newslider.swf', "flash_container", "960", "349", "10.0.0","expressInstall.swf", flashvars, params, attributes);

}
/***preload images***/

function preloader(){

	document.preload ={
		toLoad : ['followusrollover.png'],
		image : []
	}

	var i = 0;
	
	while ( i < document.preload.toLoad.length ){
		document.preload.image[i] = new Image();
		document.preload.image[i].src = document.globals.siteUrl + 'application/images/' + document.preload.toLoad[i];
		i++;
	}

}

/*** timetable ***/

function buildTimetableModal(){
	
	document.btm = {
		canDelete : false
	}
	
	$( document.getElementById('ac_link') ).fancybox({
		autoDimensions:false,
		width:463,
		height:520,
		padding:0,
		scrolling:'no'
	});
	
	$( '#can_delete' ).click(function(){ 
		$('#tt td a').toggleClass('can_delete');
		document.btm.canDelete = document.btm.canDelete?false:true; });
		
	$( '#tt td a' ).click(function(){ return document.btm.canDelete; });

$.each($('#add_class div.tt_select_wrapper'), function(i,el){
	var a = $(el).find('.tt_select').first();
	var b = $(a).find('input');
	
	$(a).addClass('tt_active')
	if( $(b).attr('type') == 'radio' ){
		$(b).attr('checked',true);
	}
	 
});

	$( 'div.tt_select' ).click(function(){
		$(this).siblings().removeClass('tt_active');
		$(this).addClass('tt_active').find('input').attr('checked',true);
		});
		
	$('#tt_submit').click(function(){
		$('#add_class_submit input').click();
	});
	
}//buidTimetableModal

/*** google maps ***/

  function buildMaps() {

    var latlng = new google.maps.LatLng( document.globals.lat, document.globals.lon );
    var myOptions = {
      zoom: 14,
      center: latlng,
      mapTypeId: google.maps.MapTypeId.TERRAIN
    };
	

	var map = new google.maps.Map(document.getElementById("google_map"), myOptions);
    
  var image = 'favicon.png';
  var myLatLng = new google.maps.LatLng( document.globals.lat , document.globals.lon );
  var beachMarker = new google.maps.Marker({
      position: myLatLng,
      map: map,
      icon: document.globals.siteUrl + 'application/images/' + image,
      title: document.globals.siteTitle
  });

  }



/*** forms ***/
function buildForms(){
	formStyle={el:'input, textarea'};//el = collection of inputs
	
	function setDefault(){ //collects values and stores as jQuery data
		$.each($(formStyle.el),function(){
			$(this).data('dVal',$(this).val());
		});}//setDefault
	setDefault();//calls immediately
	
	function clearInput(el){//triggered on focus gain
		$(el).removeClass('fade_text').css('color','black');
		if($(el).val()===$(el).data('dVal')){$(el).val('')}
		}//clearInput	

	function prepInput(el){//triggered on focus loss
		if(!$(el).val()||$(el).val()===$(el).data('dVal')){$(el).val($(el).data('dVal')).addClass('fade_text').css('color','#999999');}
		}//prepInput
		
	$.each($(formStyle.el),function(i,el){//filters unwanted input types
		var t = el.type;
		if(t!='submit'&&t!='hidden'){
			prepInput(el);
			$(el)
			.focusin(function(){clearInput(el);})
			.focusout(function(){prepInput(el);});
	}//endif
	});
}//buildForms

/****onLoad****/
$(function(){
	//form dynamic styles
	buildForms();
	
	//build google maps
	if(document.getElementById('google_map')){
	buildMaps();}

	if(document.getElementById('ac_link')){
		buildTimetableModal();
	}
	
	//preload images
	preloader();
	
	buildFlash();
	
	if( $('#gallery_wrapper').length ) {
	buildSlideshow();
	}
	
});
