var country = 'all';
var staff_type = 'director';
var staff_class = 'director';

function InitManagingDirectors()
{
	if($('directors_holder') == null)
	{
		return;
	}

	ProcessStaffMembers();
	
	Event.observe('btn_mds', 'click', SetStaffType);
	Event.observe('btn_advisors', 'click', SetStaffType);
}

function ProcessStaffMembers()
{
	if(country == 'all')
	{
		var advisors = document.getElementsByClassName('advisor');
	}
	else
	{
		var advisors = document.getElementsByClassName('advisor_' + country);
	}
		
	if(advisors.length == 0)
	{
		$('btn_advisors').hide();
		staff_type = 'director';
		staff_class = staff_type + '_' + country;
		$('btn_mds').down('img').src = 'Resource/Image/tab_managing_directors_active.gif';
		$('btn_advisors').down('img').src = 'Resource/Image/tab_senior_advisors.gif';
	}
	else
	{
		$('btn_advisors').show();
	}

	var selectionContainer = $('selection_container');
	selectionContainer.innerHTML = '';

	var staffMembers = document.getElementsByClassName(staff_class);
	for(var i = 0; i < staffMembers.length; i++)
	{
		var name = staffMembers[i].getElementsByTagName('h3')[0].innerHTML;
		var position = staffMembers[i].getElementsByClassName('director_position')[0].innerHTML;
		var image = staffMembers[i].getElementsByTagName('img')[0].src.replace(/_big.jpg/, '_small.jpg');
		
		var directorSelect = document.createElement('div');
		directorSelect.id = staffMembers[i].id + '_select';
		directorSelect.className = 'director_select';
		selectionContainer.appendChild(directorSelect);
		
		var directorImage = document.createElement('img');
		directorImage.src = image;
		directorImage.alt = name;
		directorSelect.appendChild(directorImage);
		Event.observe(directorImage, 'click', Show);
		
		var directorName = document.createElement('h3');
		directorName.title = name;
		directorName.innerHTML = name;
		directorSelect.appendChild(directorName);
		Event.observe(directorName, 'click', Show);
		
		var directorPosition = document.createElement('p');
		directorSelect.appendChild(directorPosition);
		if(position.startsWith('<P>'))
		{
			$(directorPosition).replace(position);
		}
		else
		{
			directorPosition.innerHTML = position;
		}
		
		var buttonHolders = $(staffMembers[i]).getElementsByClassName('btn_holder');
		if(buttonHolders.length > 0)
		{
			for(var x = 0; x < buttonHolders.length; x++)
			{
				$(buttonHolders[x]).remove();
			}
		}
			
		var btn_holder = document.createElement('div');
		$(btn_holder).addClassName('btn_holder');
		btn_holder.style.clear = 'left';
		staffMembers[i].appendChild(btn_holder);
		
		if($(staffMembers[i]).previous('.' + staff_class) != null)
		{
			var btn_previous = document.createElement('img');
			$(btn_previous).addClassName('btn_previous');
			btn_previous.src = 'Resource/Image/btn_left.gif';
			btn_previous.alt = '';
			btn_previous.style.margin = '0 5px 0 0';
			btn_previous.style.cursor = 'pointer';
			btn_holder.appendChild(btn_previous);
			Event.observe(btn_previous, 'click', ShowPrevious);
		}
		
		if($(staffMembers[i]).next('.' + staff_class) != null)
		{
			var btn_next = document.createElement('img');
			$(btn_next).addClassName('btn_next');
			btn_next.src = 'Resource/Image/btn_right.gif';
			btn_next.alt = '';
			btn_next.style.margin = '0';
			btn_next.style.cursor = 'pointer';
			btn_holder.appendChild(btn_next);
			Event.observe(btn_next, 'click', ShowNext);
		}
	}
	
	window.setTimeout(InitScroller, 1000);
}

function InitScroller()
{
	if($('scroller_holder') != null)
	{
		$('scroller_holder').remove();
	}
	
	var selectionContainerHolder = $('selection_container_holder');
	var selectionContainer = $('selection_container');
	
	
	if(selectionContainer.getHeight() <= selectionContainerHolder.getHeight())
	{
		return;
	}
	
	var scrollerHolder = document.createElement('div')
	scrollerHolder.id = "scroller_holder";
	selectionContainerHolder.appendChild(scrollerHolder);
	
	var btnUp = document.createElement('div');
	btnUp.id = "btn_scroll_up";
	scrollerHolder.appendChild(btnUp);
	var funcStartUp = function(){ dw_scrollObj.initScroll(selectionContainerHolder.id,'up'); };
	var funcStopUp = function(){ dw_scrollObj.stopScroll(selectionContainerHolder.id); };
	var funcIncreaseSpeed = function(){ dw_scrollObj.doubleSpeed(selectionContainerHolder.id); };
	var funcResetSpeed = function(){ dw_scrollObj.resetSpeed(selectionContainerHolder.id); };
	Event.observe(btnUp, 'mouseover', funcStartUp);
	Event.observe(btnUp, 'mouseout', funcStopUp);
	Event.observe(btnUp, 'mousedown', funcIncreaseSpeed);
	Event.observe(btnUp, 'mouseup', funcResetSpeed);
	
	var scrollBarHolder = document.createElement('div');
	scrollBarHolder.id = 'scroll_bar_holder';
	scrollerHolder.appendChild(scrollBarHolder);
	
	var scrollBar = document.createElement('div');
	scrollBar.id = 'scroll_bar';
	scrollBarHolder.appendChild(scrollBar);
	
	var btnDown = document.createElement('div');
	btnDown.id = "btn_scroll_down";
	scrollerHolder.appendChild(btnDown);
	var selectionContainerHolderId = selectionContainerHolder.id;
	var funcStartDown = function(){ dw_scrollObj.initScroll(selectionContainerHolderId,'down'); };
	var funcStopDown = function(){ dw_scrollObj.stopScroll(selectionContainerHolderId); };
	Event.observe(btnDown, 'mouseover', funcStartDown);
	Event.observe(btnDown, 'mouseout', funcStopDown);
	Event.observe(btnDown, 'mousedown', funcIncreaseSpeed);
	Event.observe(btnDown, 'mouseup', funcResetSpeed);
	
	var wndo1 = new dw_scrollObj(selectionContainerHolder.id, selectionContainer.id, null);
	wndo1.setUpScrollbar('scroll_bar', 'scroll_bar_holder', "v", 0, 1);
}

function Show(Evt)
{
	var elem = Event.findElement(Evt, 'h3');
	if(elem == null) 
	{
		elem = Event.findElement(Evt, 'img');
	}
	
	if(elem == null)
	{
		return;
	}

	var id = elem.up('.director_select').id.replace(/_select/, '');
	
	var advisors = document.getElementsByClassName('advisor');
	for(var i = 0; i < advisors.length; i++)
	{
		advisors[i].hide();
	}
	
	var directors = document.getElementsByClassName('director');
	for(var i = 0; i < directors.length; i++)
	{
		directors[i].hide();
	}
	
	$('intro_holder').hide();
	
	$(id).style.display = 'block';
}

function ShowNext(Evt)
{
	var btn = Event.findElement(Evt, 'img');
	if(btn == null)
	{
		return;
	}
	
	var staffMemberHolder = btn.up('.' + staff_class);
	var nextStaffMemberHolder = staffMemberHolder.next('.' + staff_class);
	
	if((staffMemberHolder != null) && (nextStaffMemberHolder != null))
	{
		staffMemberHolder.hide();
		nextStaffMemberHolder.style.display = 'block';
	}
}

function ShowPrevious(Evt)
{
	var btn = Event.findElement(Evt,'img');
	if(btn == null)
	{
		return;
	}
	
	var staffMemberHolder = btn.up('.' + staff_class);
	var previousStaffMemberHolder = staffMemberHolder.previous('.' + staff_class);
	
	if((staffMemberHolder != null) && (previousStaffMemberHolder != null))
	{
		staffMemberHolder.hide();
		previousStaffMemberHolder.style.display = 'block';
	}
}

function ShowIntro()
{
	var advisors = document.getElementsByClassName('advisor');
	for(var i = 0; i < advisors.length; i++)
	{
		advisors[i].hide();
	}
	
	var directors = document.getElementsByClassName('director');
	for(var i = 0; i < directors.length; i++)
	{
		directors[i].hide();
	}
	
	$('intro_holder').show();
}

function SetCountry(Evt)
{
	var btnHolder = Event.findElement(Evt, 'select');
	if((btnHolder == null) || ($F(btnHolder) == null) || ($F(btnHolder) == ''))
	{
		return;
	}
	
	country = $F(btnHolder);
	
	if(country == 'all')
	{
		staff_class = staff_type;
	}
	else
	{
		staff_class = staff_type + '_' + country;
	}
	
	ProcessStaffMembers();
	ShowIntro();
}

function SetStaffType(Evt)
{
	var btn_staffType = Event.findElement(Evt, 'a');
	if(btn_staffType == null)
	{
		return;
	}
	
	if(btn_staffType.id == 'btn_mds')
	{
		staff_type = 'director';
		$('btn_mds').down('img').src = 'Resource/Image/tab_managing_directors_active.gif';
		$('btn_advisors').down('img').src = 'Resource/Image/tab_senior_advisors.gif';
	}
	else if(btn_staffType.id == 'btn_advisors')
	{
		staff_type = 'advisor';
		$('btn_mds').down('img').src = 'Resource/Image/tab_managing_directors.gif';
		$('btn_advisors').down('img').src = 'Resource/Image/tab_senior_advisors_active.gif';
	}
	
	if(country == 'all')
	{
		staff_class = staff_type;
	}
	else
	{
		staff_class = staff_type + '_' + country;
	}
	ProcessStaffMembers();
	ShowIntro();
}