/**
 * Code by Giancarlo "GM" Moschitta (info@myphp.it) and Simone "negatyve" Auteritano (negatyve@negatyve.com)
 * Powered by jQuery (http://jquery.com))
**/

/**
 * Avvia tutti gli script necessari alla homepage di Manager
**/
function initManagerHome()
{
	var isIE6 = $.browser.msie && Number( $.browser.version.split('.')[0] ) <= 6;
	if( !isIE6 )
	{
		$( '.luxury-home-box-highlight .main-item' ).each( setLuxuryMainItemHoverStyles );
	}
	$( '.luxury-home-box-highlight .side-item' ).each( setLuxurySideItemHoverStyles );
	$( '.articles-list li' )
		.css( 'cursor', 'pointer' )
		.hover( addHoverClass, delHoverClass )
	;
	$( '.articles-list li:not(.home-sponsored-article-container)' ).click( gotoArticlesListInnerLink );
	$( '#events-box li' )
		.css( 'cursor', 'pointer' )
		.hover( addHoverClass, delHoverClass )
		.click( gotoListInnerLink )
	;
	$( '.logo' ).pngFix();
	setUtilityAgendaBoxClick();
}

/**
 * Regola il funzionamento del box utility e agenda
**/
function toggleUtilityAgendaBox()
{
	var utag = $( '#utility-agenda' ); 
	$( 'h2', utag ).each
	(
		function()
		{
			$( this ).css( 'cursor', 'default' ).unbind().removeClass();
			var link = $( this ).find( 'a' );
			if( link.length > 0 )
			{
				link.remove();
			} else {
				$( '<a href="#" title="Espandi">Espandi</a>' ).appendTo( $( this ) );
			}
		}
	);
	var closed = utag.attr( 'class' ).replace( 'expand-', '');
	var opened = closed == 'utility' ? 'agenda' : 'utility';
	utag.attr( 'class', 'expand-' + opened );
	$( '.utility', utag ).animate
	(
		{ height: closed == 'utility' ? '426px': '50px' }, 200, 'swing'
	);
				
	setUtilityAgendaBoxClick();
	return false;
}

/**
 * Imposta il gestore dell'evento click nel box utility e agenda
**/
function setUtilityAgendaBoxClick()
{
	$( '#utility-agenda h2 a' ).parent()
		.click( toggleUtilityAgendaBox )
		.hover
		(
			function(){ $( this ).addClass( 'hovered' ); } ,
			function(){ $( this ).removeClass( 'hovered' ); }
		)
		.css( 'cursor', 'pointer' );
}

/**
 * Imposta gli stili per l'evento hover sull'elemento principale della lista degli articoli luxury
**/
function setLuxuryMainItemHoverStyles()
{
	var item = $( this );
	$( '.img-container, .title-link', item ).hover
	(
		function(){ item.addClass( 'main-item-hovered' ); }
		,
		function(){ item.removeClass( 'main-item-hovered' ); }
	).css( 'cursor', 'pointer' );
	var link = $( this ).find( '.title-link' );
	$( '<div class="highlight-background"/>' )
		.insertAfter( link )
		.css( { width: link.width(), opacity: 0.9 } )
	;
	link.css( 'background', 'transparent none' );
}

/**
 * Imposta gli stili per l'evento hover sugli elementi secondari della lista degli articoli luxury
**/
function setLuxurySideItemHoverStyles()
{
	var item = $( this );
	var style = item.hasClass( 'side-item-first' ) ? 'side-item-first-hovered' : 'side-item-hovered';
	$( '.img-container, .title-link', item ).hover
	(
		function(){ item.addClass( style ); } ,
		function(){ item.removeClass( style ); }
	).css( 'cursor', 'pointer' );
}

/**
 * Redirige la pagina al link interno all'elemento della lista
**/
function gotoArticlesListInnerLink()
{
	gotoSelectedPage( $( this ).find( '.img-container' ).attr( 'href' ) );
}

/**
 * Associa la funzione initManagerHome all'evento onload della pagina
**/
$( document ).ready( initManagerHome );