/**
 * products.js - Controller and renderer for the products page.
 * 
 * @module YAHOO.storefront.pages.home
 * @requires YAHOO.storefront.base
 */
YAHOO.namespace("storefront.pages.home");

/**
 * The widget page renderer.
 * 
 * @class YAHOO.storefront.pages.home.HomeRenderer
 * @extends YAHOO.storefront.base.BaseRenderer
 */
YAHOO.storefront.pages.home.HomeRenderer = function( messages, whyArticle, rotateCount )
{
	this.inheritFrom = YAHOO.storefront.base.BaseRenderer;
	this.inheritFrom();
	
	this.whyArticle = whyArticle;
	this.rotateCount = rotateCount;
	
	/**
	 * The internationalized messages for display.
	 * 
	 * @property messages
	 */
	this.messages = messages;
	
	this.showWhyArticle = function()
	{
		this.showModal( this.whyArticle.title, this.whyArticle.content );
	}
	
	/**
	 * Initializes the renderer.
	 * 
	 * @method init
	 * @param rotatingBannerId string the container for the rotating
	 * 			banner widget
	 * @param tabbedControlId string the container for the tabbed
	 * 			control widget
	 */
	this.init = function( rotatingBannerId, tabbedControlId )
	{
		this.log("HomeRenderer.init() - begin");
		
		this.baseInit();
				
		// init rotating banner
		carouselCounter = setDivCounter('rotator-homepage');
		startCarousel('rotator-homepage', carouselCounter);
			
		setEventListeners( this.rotateCount ); 
		
		this.disableLink( this.g("login-username-info") );
		this.event.addListener( "login-username-info", "click",
			closure(
				this,
				function(){ this.showWhyArticle(); }
			));
				
		this.log("HomeRenderer.init() - end");
	}
	
};

/**
 * The widget page controller.
 * 
 * @class YAHOO.storefront.pages.home.HomeController
 * @extends YAHOO.storefront.base.BaseController
 */
YAHOO.storefront.pages.home.HomeController = function( renderer )
{
	this.inheritFrom = YAHOO.storefront.base.BaseController;
	this.inheritFrom( renderer );
		
	this.checkFields = function()
	{
		if( document.getElementById("user-id").value == "" && document.getElementById("password").value == "")
	    {
	    	alert( "Please enter Username and Password to log in.");
	    	return false;
	    }
	    else if(document.getElementById("user-id").value == "")
	    {
	       	alert( "Please enter Username to log in.");
	       	return false;
	    }
	    else if(document.getElementById("password").value == "")
	    {
	      	alert( "Please enter Password to log in.");
	      	return false;
	    }
	    else return true;
	}
	
		
	/**
	 * Initializes the controller by setting event bindings.
	 * 
	 * @method init
	 */
	this.init = function()
	{
		this.log("HomeController.init() - begin");
		
        this.baseInit();
        
		this.log("HomeController.init() - end");
	};
};

/**
 * creates the objects
 */
//(function(){
	var ns = YAHOO.storefront.pages.home;
	var renderer = new ns.HomeRenderer( ns.messages, ns.whyArticle, ns.rotateCount );
	var controller = new ns.HomeController( renderer );
	controller.init();
	renderer.init();
//})();
