	/**
	 * 
	 * Javascript Site
	 * 
	 * @name Site
	 * @author vcantin
	 * @since 2008-01-11
	 * @version 1.0.0
	 * @package reptileframework
	 * 
	 */
		
	var Site = Class.create
	(
		CommonSite,
		{
			errorClassName : 'error',
			
			leftNavigation : function(idToShow)
			{
				if(!$(idToShow))
				{
					idToShow = null;	
				}
				else
				{
					$(idToShow).addClassName('menu_selected');
				}
				
				$$('#menu div.menu_titles').each
				(
				 	function(elementTitle) 
					{   
						if($(elementTitle.id + '_box'))
						{						
							var hideElement = (idToShow == null || idToShow.split('_')[0] != elementTitle.id.split('_')[1] ) ? 1 : 0;						
							
							animatedcollapse.addDiv(elementTitle.id + '_box', 'fade=1,speed=500,persist=0,hide=' + hideElement)
						}
						else
						{
							Site.log(elementTitle.id + '_box')
						}
					}
				);			
				
				animatedcollapse.ontoggle=function($jq, divobj, state){}
				animatedcollapse.init();
				$('menu').show();
			},
			
			updateCart : function(cartAttributes,isPopAlert)
			{
				if(cartAttributes.header_cart_display == 'block')
				{		
					$('header_cart_nb_items').update(cartAttributes.header_cart_nb_items_text);
					$('header_cart').show();					
				
					if (isPopAlert) 
					{
						Site.popAlert
						(
							cartAttributes.header_cart_nb_items_text, 
							{timeoutClose: 2000}
						);
					}
				}
				else
				{
					$('header_cart').hide();					
				}		
			},
			
			topNavigation : function(idToShow)
			{				
				if(!$(idToShow))
				{
					idToShow = null;	
				}
				else
				{
					$(idToShow).addClassName('menu_selected');
				}
			},			
			
			handleEmailLogin : function ()
			{
				if((loginUsername = $('home_login_username')) !== null)	
				{				
					loginUsername.observe
					(
						'click',
						function()
						{						
							if(loginUsername.value == PHPVars.get('common.enter_email'))
							{
								loginUsername.value = '';
							}
								
						}
					);
				}
			},

			newletterSubmit : function (currentForm)
			{		
				var currentForm = $(currentForm);
				var emailField = currentForm.header_newsletter_email;
				 
				if(ValidatorElement.isEmail(emailField.value))
				{				
					currentForm.request
					({
		 				method: 'post',   
						requestHeaders: { Output:'text/json'},   
						onComplete: function(transport)
						{
							if(transport.responseJSON.email_status == 'sent')
							{
								var messageReturn = 'common.newsletter_sent';								
							}
							else
							{
								var messageReturn = 'common.newsletter_error';						
							}
							
							CommonSite.popAlert(PHPVars.get(messageReturn));
							
							Site.closeAlert.bind(CommonSite).delay(5);	
							
							$(emailField).clear();
					 	} 
					});
					
					emailField.removeClassName(this.errorClassName);
				}
				else
				{
					emailField.addClassName(this.errorClassName);
				}	
			}	
		}
	);
	
	Site = new Site();
