if( hq == undefined ) {
	var hq = {};
}

hq.idx = {
	
	init : function() {
		console.group( 'idx::init' );
		
		$j( '#contentWrapper' )
			.bind( 'logIn', toolbox.delegate( this.onLogIn, this ) )
			.bind( 'logOut', toolbox.delegate( this.onLogOut, this ) )
			.bind( 'favChange', toolbox.delegate( this.onFavChange, this ) )
			.bind( 'refreshSide', toolbox.delegate( this.onRefreshSide, this ) );
			
		// Share this tweaks
		$j('.stbuttontext').css('line-height', '0');
		$j('.stbutton').attr( 'noAjax', '1' );
		
		//$j( 'body, html' ).css( 'overflow', 'hidden' );
		
		$j( '#mapWrapper' ).append( "<div id='loadingMsg'><img src='/wp-content/plugins/hq_idx/images/loading-spinner.gif' width=32 height=32 /></div>" );
		
		console.groupEnd();
	},
	
	onLogIn : function( evt, evtElement ) {
		console.group( 'IDX::onLogIn' );
		
		eval( 'var info = ' + $j( evtElement ).attr( 'userInfo' ) );
		
		$j( "ul#siteNav" ).removeClass( 'loggedOut' ).addClass( 'loggedIn' );
		$j( "#userSummary" ).removeClass( 'loggedOut' ).addClass( 'loggedIn' );
		$j( "#guestSummary" ).removeClass( 'loggedOut' ).addClass( 'loggedIn' );
		
		$j('#summaryName').html(info['name']);
		
		var count = parseInt( info['favCount'] );
		if(count && count != 'NaN') {
			$j('#summaryFavCount').html(String( count ) );
		}
		
		console.groupEnd();
	},
	
	onLogOut : function() {
		console.group( 'IDX::onLogOut' );
		
		$j( "ul#siteNav" ).removeClass( 'loggedIn' ).addClass( 'loggedOut' );
		$j( "#userSummary" ).removeClass( 'loggedIn' ).addClass( 'loggedOut' );
		$j( "#guestSummary" ).removeClass( 'loggedIn' ).addClass( 'loggedOut' );
		
		console.groupEnd();
	},
	
	onFavChange : function( evt, evtElement ) {
		console.group( 'IDX:onFavChange' );
		
		var total = parseInt( $j( evtElement ).attr( 'total' ) );
		if(total && total != 'NaN') {
			$j( '#summaryFavCount' ).html( String( total ) );
		}
		
		console.groupEnd();
	},
	
	onRefreshSide : function( evt, evtElement ) {
		console.group( 'IDX:onRefreshSide' );
		
		var url = $j( evtElement ).attr( 'url' );
		
		if( url ) {
			console.info('USING URL: ' + url );
			hq.ajax.loadLink( url , true);
		//}
		//else if( hq.ajax.paneUrl ) {
		//	console.info('USING paneURL: ' + hq.ajax.paneUrl );
		//	hq.ajax.loadLink( hq.ajax.paneUrl, true );	
		} else {
			var url = $j( '#listUrl' ).val();
			hq.ajax.loadLink( url );
		}
		
		console.groupEnd();
	}
	
};

$j( document ).ready( toolbox.delegate( hq.idx.init, hq.idx ) );
