﻿var _fPreventSvcsHover = false;

$(document).ready(function()
{
	var content = $("#divContentHeroes");
	var _slideDuration = 500; //time in milliseconds
	var _slideEasing = "easeInOutCubic"; //linear, swing, easeInOutCubic
	var _fadeDuration = 1200;  //time in milliseconds
	var _verticalDivOneOpen = false;
	var _verticalDivTwoOpen = false;
	var _verticalDivThreeOpen = false;
	var _divOneStartRight = '390px';
	var _divTwoStartRight = '245px';
	var _divThreeStartRight = '101px';
	var _divOneEndRight = '760px';
	var _divTwoEndRight = '616px';
	var _divThreeEndRight = '472px';
	var _detailsOpacity = 1;
	var _divArrowLeft = 'url(images/icon_ArrowLeft.gif)';
	var _divArrowRight = 'url(images/icon_ArrowRight.gif)';

	$("#divV1Text").hide();
	$("#divV2Text").hide();

	$('#divContentHeroes').load('homePageHeroes.htm', function()
	{
		var _heroes = $(this).find('div.section');
		var _noOfHeroes = _heroes.length;
		var _randomHero = Math.floor(Math.random() * _noOfHeroes);
		_heroes.hide().eq(_randomHero).fadeIn();
	});

	function hideDescriptiveDiv(divName)
	{
		$('#' + divName).animate({ width: "0px" }, { queue: false, duration: _fadeDuration, easing: 'easeInOutCubic' }); //.css('width', '0px'); //
		$('#' + divName).css('z-index', '-1');
	}

	$('#divServices').hover(
        function()
        {
        	if (!_fPreventSvcsHover && $(this).children("a:eq(0)").text() == "Consulting Services")
        	{
        		_fPreventSvcsHover = true;
        		$('#divServices')
					.queue(function() { $(this).fadeOut('fast'); $(this).dequeue(); })
					.queue(function() { $(this).children("a:eq(0)").text('We provide all the implementation and integration services required to deliver across the full project life cycle.'); $(this).dequeue(); })
					.queue(function() { $(this).fadeIn('fast'); $(this).dequeue(); })
					.queue(function() { _fPreventSvcsHover = false; $(this).dequeue(); })
					;
        	}
        },
        function()
        {
        	if (!_fPreventSvcsHover && $(this).children("a:eq(0)").text() != "Consulting Services")
        	{
        		_fPreventSvcsHover = true;
        		$('#divServices')
					.queue(function() { $(this).fadeOut('fast'); $(this).dequeue(); })
					.queue(function() { $(this).children("a:eq(0)").text('Consulting Services'); $(this).dequeue(); })
					.queue(function() { $(this).fadeIn('fast'); $(this).dequeue(); })
					.queue(function() { _fPreventSvcsHover = false; $(this).dequeue(); })
					;
        	}
        }
    );

	function handleVerticalDivOne()
	{
		if (!_verticalDivOneOpen)
		{
			toggleDetails('CMS', '');
			if (_verticalDivTwoOpen)
			{
				$('#divVerticalTwo div.verticalDetailsContainer').fadeOut('fast', function()
				{
					$('#divVerticalTwo').animate({ right: _divTwoStartRight }, _slideDuration, _slideEasing);
					$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowLeft);
					$('#divVerticalOne').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing, function()
					{
						$('#divVerticalOne div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
					});
				});
				toggleDetails('DRM', '');
				_verticalDivTwoOpen = false;
			}
			else if (_verticalDivThreeOpen)
			{
				$('#divVerticalThree div.verticalDetailsContainer').fadeOut('fast', function()
				{
					$('#divVerticalThree').animate({ right: _divThreeStartRight }, _slideDuration, _slideEasing);
					$('#divVerticalThree div.verticalTopArrow').css('background-image', _divArrowLeft);
					$('#divVerticalTwo').animate({ right: _divTwoStartRight }, _slideDuration, _slideEasing);
					$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowLeft);
					$('#divVerticalOne').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing, function()
					{
						$('#divVerticalOne div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
					});
				});
				toggleDetails('DRM', '');
				toggleDetails('BSD', '');
				_verticalDivTwoOpen = false;
				_verticalDivThreeOpen = false;
			}
			else
			{
				//move from right hand side to left hand side
				$('#divCRMDetails').fadeOut('fast', function()
				{
					$('#divVerticalOne').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing, function()
					{
						$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowRight);
						$('#divVerticalOne div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
					});
				});
			}
			_verticalDivOneOpen = true;
		}
		else
		{
			//collapse to right hand side
			$('#divVerticalOne div.verticalDetailsContainer').fadeOut('fast', function()
			{
				$('#divVerticalOne').animate({ right: _divOneStartRight }, _slideDuration, _slideEasing);
				$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowLeft);
				$('#divCustomers').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing, function()
				{
					$('#divCRMDetails').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
				});
			});
			toggleDetails('CMS', '');
			_verticalDivOneOpen = false;
		}
	}

	function handleVerticalDivTwo()
	{
		if (_verticalDivTwoOpen)
		{
			//open, so collapse
			toggleDetails('CMS', '');
			$('#divVerticalTwo div.verticalDetailsContainer').fadeOut('fast', function()
			{
				$('#divVerticalTwo').animate({ right: _divTwoStartRight }, _slideDuration, _slideEasing, function()
				{
					$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowLeft);
					$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowRight);
					$('#divVerticalOne div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
				});
			});
			toggleDetails('DRM', '');
			_verticalDivOneOpen = true;
			_verticalDivTwoOpen = false;
		}
		else if (!_verticalDivTwoOpen)
		{
			//collapsed, so open
			if (_verticalDivThreeOpen)
			{
				toggleDetails('DRM', '');
				$('#divVerticalThree div.verticalDetailsContainer').fadeOut('fast', function()
				{
					$('#divVerticalThree').animate({ right: _divThreeStartRight }, _slideDuration, _slideEasing, function()
					{
						$('#divVerticalThree div.verticalTopArrow').css('background-image', _divArrowLeft);
						$('#divVerticalTwo div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
						$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowRight);
					});
				});
				toggleDetails('BSD', '');
				_verticalDivThreeOpen = false;
			}
			else
			{
				// move from right hand side to left hand side                
				$('#divCRMDetails').fadeOut('fast', function()
				{
					$('#divCustomers').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing);
					if ($('#divVerticalOne div.verticalDetailsContainer').css('display') != 'none')
					{
						$('#divVerticalOne div.verticalDetailsContainer').fadeOut('fast');
						toggleDetails('CMS', '');
					}
					toggleDetails('CRM', '');
					toggleDetails('DRM', '');
					$('#divVerticalOne').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing);
					$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowRight);
					$('#divVerticalTwo').animate({ right: _divTwoEndRight }, _slideDuration, _slideEasing, function()
					{
						$('#divVerticalTwo div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
						$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowRight);
					});
				});
				_verticalDivOneOpen = false;
			}
			_verticalDivTwoOpen = true;
		}
	}

	function handleVerticalDivThree()
	{
		if ($('#divVerticalThree').css('right') == _divThreeStartRight)
		{
			//expand out
			//check if the details divs are visible
			toggleDetails('BSD', '');
			$('#divCRMDetails').fadeOut('fast', function()
			{
				$('#divCustomers').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing);
				if ($('#divVerticalOne div.verticalDetailsContainer').css('display') != 'none')
				{
					$('#divVerticalOne div.verticalDetailsContainer').fadeOut('fast');
				}
				$('#divVerticalOne').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing);
				$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowRight);
				if ($('#divVerticalTwo div.verticalDetailsContainer').css('display') != 'none')
				{
					$('#divVerticalTwo div.verticalDetailsContainer').fadeOut('fast');
				}
				$('#divVerticalTwo').animate({ right: _divTwoEndRight }, _slideDuration, _slideEasing);
				$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowRight);
				$('#divVerticalThree').animate({ right: _divThreeEndRight }, _slideDuration, _slideEasing, function()
				{
					$('#divVerticalThree div.verticalTopArrow').css('background-image', _divArrowRight);
					$('#divVerticalThree div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
				});
			});
			toggleDetails('CRM', '');
			toggleDetails('CMS', '');
			toggleDetails('DRM', '');
			_verticalDivOneOpen = false;
			_verticalDivTwoOpen = false;
			_verticalDivThreeOpen = true;
		}
		else
		{
			//collapse
			toggleDetails('DRM', '');
			$('#divVerticalThree div.verticalDetailsContainer').fadeOut('fast').animate({ opacity: 0.0 }, 500, function()
			{
				$('#divVerticalThree').animate({ right: _divThreeStartRight }, _slideDuration, _slideEasing, function()
				{
					$('#divVerticalThree div.verticalTopArrow').css('background-image', _divArrowLeft);
					$('#divVerticalTwo div.verticalDetailsContainer').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
				});
			});
			toggleDetails('BSD', '');
			_verticalDivTwoOpen = true;
			_verticalDivThreeOpen = false;
		}
	}

	function handleCustomersDiv()
	{

		if (_verticalDivOneOpen)
		{
			$('#divVerticalOne div.verticalDetailsContainer').fadeOut('fast', function()
			{
				$('#divVerticalOne').animate({ right: _divOneStartRight }, _slideDuration, _slideEasing);

				$('#divCustomers').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing, function()
				{
					$('#divCRMDetails').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
				});
			});
			$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowLeft);

			_verticalDivOneOpen = false;
		}
		else if (_verticalDivTwoOpen)
		{
			$('#divVerticalTwo div.verticalDetailsContainer').fadeOut('fast', function()
			{

				$('#divVerticalOne').animate({ right: _divOneStartRight }, _slideDuration, _slideEasing);
				$('#divVerticalTwo').animate({ right: _divTwoStartRight }, _slideDuration, _slideEasing);

				$('#divCustomers').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing, function()
				{
					$('#divCRMDetails').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
				});
			});
			$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowLeft);
			$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowLeft);

			_verticalDivTwoOpen = false;
		}
		else if (_verticalDivThreeOpen)
		{
			$('#divVerticalThree div.verticalDetailsContainer').fadeOut('fast', function()
			{

				$('#divVerticalOne').animate({ right: _divOneStartRight }, _slideDuration, _slideEasing);
				$('#divVerticalTwo').animate({ right: _divTwoStartRight }, _slideDuration, _slideEasing);
				$('#divVerticalThree').animate({ right: _divThreeStartRight }, _slideDuration, _slideEasing);

				$('#divCustomers').animate({ right: _divOneEndRight }, _slideDuration, _slideEasing, function()
				{
					$('#divCRMDetails').fadeIn('fast').animate({ opacity: _detailsOpacity }, 500);
				});
			});
			$('#divVerticalOne div.verticalTopArrow').css('background-image', _divArrowLeft);
			$('#divVerticalTwo div.verticalTopArrow').css('background-image', _divArrowLeft);
			$('#divVerticalThree div.verticalTopArrow').css('background-image', _divArrowLeft);

			_verticalDivThreeOpen = false;
		}

		//reset the details within each div
		toggleDetails('CRM', '');
		toggleDetails('CMS', '');
		toggleDetails('DRM', '');
		toggleDetails('BSD', '');
	}

	$("#divVerticalOne").click(handleVerticalDivOne);
	$("#divVerticalTwo").click(handleVerticalDivTwo);
	$("#divVerticalThree").click(handleVerticalDivThree);
	$("#divCustomers").click(handleCustomersDiv);

	/**************
	Detail Table functions
	**************/
	$(".tableHomePageDetails tr").hover(
        function()
        {
        	$(this).addClass("highlight");
        	toggleDetails($(this).attr('id'), 'show');
        },
        function()
        {
        	$(this).removeClass("highlight");
        }
    );

	function toggleDetails(trID, display)
	{
		if (display == 'show')
		{
			$('#span' + trID.toString().substring(0, 3) + 'Display').html($('#span' + trID).html());
		}
		else
		{
			$('#span' + trID.toString().substring(0, 3) + 'Display').html($('#span' + trID.toString().substring(0, 3) + 'Summary').html());
		}
	}


});
