var player = null;
var pause = null;
var play = null;
var progress_bar = null;
var duration_bar = null;

function playerReady(thePlayer) {
	player = document.getElementById(thePlayer.id);
	load_player_controls();
}

function player_change_time(obj){
	var width = duration_bar.width();
	var block_width = width / obj.duration;
	var position = Math.ceil(block_width*obj.position);
		position = position > width ? width : position;
	progress_bar.css('left', position+'px');
}

function player_change_state(obj){
	if(obj.newstate == 'PAUSED'){
		player_control_enable(play);
		player_control_disable(pause);
	}else if(obj.newstate == 'PLAYING'){
		player_control_enable(pause);
		player_control_disable(play);
	}else if(obj.newstate == 'COMPLETED'){
		player_control_enable(play);
		player_control_disable(pause);
	}
}

function player_control_enable(obj){
	obj
		.removeClass('disabled')
		.fadeTo(100, 1);
}

function player_control_disable(obj){
	obj
		.addClass('disabled')
		.fadeTo(100, 0.3);
}

function load_player_controls(){
	var video_controls = $('.video-controls');
	pause = $('li.pause', video_controls);
	play = $('li.play', video_controls);
	progress_bar = $('li.duration div.progress', video_controls);
	duration_bar = $('li.duration', video_controls);

	player.addModelListener('STATE', 'player_change_state');
	//player.addModelListener('TIME', 'player_change_time');
	player_control_disable(pause);

	$('a', play).bind('click', function(){
		if(!play.is('.disabled')){
			player.sendEvent('PLAY');
		}
		return false;
	});

	$('a', pause).bind('click', function(){
		if(!pause.is('.disabled')){
			player.sendEvent('PLAY');
		}
		return false;
	});
}

$(document).ready(function (){
	_load_homepage_slider();
	_load_form_text_hide();
	_load_right_tab_switcher();
	_load_gmaps();
});

function _load_homepage_slider(){
	$('.sliding-banners').each(function(){
		if($('li', $(this)).length > 1){
			slider(this);
		}
	});
}

var slider = function(target){

	var delay = 8000;
	var transition = 500;

	var container = $(target);
	var list = $('ul', container);
	var list_items = $('li', list);
	var direction = 'right';
	var list_width = 0;

	$(list_items).each(function(){
		list_width = list_width + $(this).outerWidth(true);
	});

	list.css('width', list_width+'px');

	var next_action = function(){
		var selected = $('.selected', list);

		var next = selected.next();
		var prev = selected.prev();

		if(direction == 'right' && next.length == 0){
			direction = 'left';
		}else if(direction == 'left' && prev.length == 0){
			direction = 'right';
		}

		selected.removeClass('selected');
		if(direction == 'right'){
			next.addClass('selected');
		}else{
			prev.addClass('selected');
		}

		list.animate({left:(direction == 'right'?'-=333':'+=333')}, transition, function(){
			setTimeout(next_action, delay);
		});

	};

	setTimeout(next_action, delay);

};

function _load_right_tab_switcher(){
	$('ul.right-tabs a').click(function(){
		$('ul.right-tabs li').removeClass('selected');
		$(this.parentNode).addClass('selected');
		var class_target = '.'+$(this.parentNode).attr('id');
		$('.right-tabs-content ul').removeClass('selected');
		$(class_target).addClass('selected');
		return false;
	});
}

function _load_gmaps(){
	if (GBrowserIsCompatible()) {
		var map_obj = document.getElementById("map_canvas");
		var map_coords = document.getElementById("map_coords");
		if(map_obj && map_coords){
			map = new GMap2(map_obj);
			var data = $('#map_coords').val();
			lat_lang = data.split(',');
			map.setCenter(new GLatLng(lat_lang[0], lat_lang[1]), 13);
			var map_point = new GLatLng(lat_lang[0], lat_lang[1]);
			map_dropper= new GMarker(map_point);
			map.addOverlay(map_dropper);
        	map.setUIToDefault();
		}
	}
}


function _load_form_text_hide(){
	var input_hide_text = $('input.hide-text');
	var hide_text_list = Array();
	for(var i=0; i<input_hide_text.length;i++){
		hide_text_list[$(input_hide_text[i]).attr('id')] = $(input_hide_text[i]).val();
		$(input_hide_text[i]).focus(function(){
			if(hide_text_list[$(this).attr('id')] == $(this).val()){
				$(this).val('');
			}
		});
		$(input_hide_text[i]).blur(function(){
			if($(this).val() == ''){
				$(this).val(hide_text_list[$(this).attr('id')]);
			}
		});
	}
}