/**
* Assign the view handler
*/

viewHandler = Home;

/**
* Creates a new object with methods used by the Home page
*
* @author				Matt Gifford
* @copyright			2008 Timeshifting Interactive Limited
*/
function Home()
	{
	// Step 1. Define Properties

	var _instance = this;



	// Step 2. Define Public Methods

	/**
	* Sets up the initial page state and event handlers
	*/
	this.init = function()
		{
		// Call generic page init method
		this.base.init.call(this);

		// Add event handlers to article links
		var links = document.getElementById('homeFeaturedLinks').getElementsByTagName('div');
		for (var x = 0; x < links.length; x++)
			{
			links[x].onclick = __eventHandlerArticleLinkClick;
			links[x].onmouseover = __eventHandlerArticleLinkOver;
			links[x].onmouseout = __eventHandlerArticleLinkOut;
			}
		}
	

	// Step 3. Define Private Methods

	/**
	* Event Handler: Changes the article displayed on click
	*/
	function __eventHandlerArticleLinkClick()
		{
		var id = this.id.replace(/\D/g, '');

		// Update the displayed article
		var divs = document.getElementById('homeFeaturedArticles').getElementsByTagName('div');
		for (var x = 0; x < divs.length; x++)
			{
			if (divs[x].className.indexOf('article') != -1)
				{
				divs[x].className = divs[x].className.replace(/\s?hidden/g, '') + ' hidden';
				}
			}
		document.getElementById('homeFeaturedArticles' + id).className = document.getElementById('homeFeaturedArticles' + id).className.replace(/\s?hidden/g, '');

		// Update the links
		var links = document.getElementById('homeFeaturedLinks').getElementsByTagName('div');
		for (var x = 0; x < links.length; x++)
			{
			links[x].className = links[x].className.replace(/\s?active/g, '');
			}
		this.className += 'active';
		}


	/**
	* Event Handler: Changes the article link class name on mouse over
	*/
	function __eventHandlerArticleLinkOver()
		{
		if (this.className.indexOf('active') == -1)
			{
			this.className += ' hover';
			}
		}


	/**
	* Event Handler: Changes the article link class name on mouse out
	*/
	function __eventHandlerArticleLinkOut()
		{
		this.className = this.className.replace(/\s?hover/g, '');
		}
	}
