$(document).ready(function( ) {

	// ----------------------------------------
	// publicacoes
	
	var idRadio;

	function montaListagem( idRadio, offset_ )
	{
		var param = { offset: offset_, 
					  idCategoria: window.ID_CATEGORIA, 
					  id: idRadio };

		$( 'div.indice ul#noticias li' ).remove( );

		$( '<li>Carregando...</li>' ).appendTo( 'div.indice ul#noticias' );

		$.myPost( '/ajax_publicacoes.php', param, function( response ) {

			$( 'div.indice ul#noticias li' ).remove( );

			var countPublicacoes = response['count'];
			var currentOffset	 = response['offset'];

			if ( countPublicacoes > 0 )
			{
				var publicacoes = response[ 'publicacoes' ];
	
				for ( i in publicacoes )
				{
					var publicacao = publicacoes[ i ];
					var conteudo = '<li><a href="' + publicacao['link'] + '"><strong>' + publicacao['titulo'] + '</strong><br />' +
									publicacao['resumo'] + '<br />' + publicacao['publicacao'] + '</a>';

					if ( publicacao['audio'] )
					{
						conteudo += '<div id="audioplayer_' + i + '"></div>';
					}

					conteudo += '</li>';
					$( conteudo ).appendTo( 'div.indice ul#noticias' );

					if ( publicacao['audio'] )
					{
						AudioPlayer.embed('audioplayer_' + i, 
								{ soundFile: window.AUDIO_URL + '/' + publicacao['audio'] } );
					}
				}
			}
			else
			{
				$( '<li>Nenhum registro encontrado!</li>' ).appendTo( 'div.indice ul#noticias' );
			}

			montaPaginacao( countPublicacoes, currentOffset );
		});
	};

	// evento click nas abas
	$( 'ul.tabradios li a.noticiasTab' ).live('click', function ( ) {

		idRadio = $(this).attr( 'id' );

		// esconde todos selected
		$( 'ul.tabradios li div.selected' ).hide( );
		$( 'ul.tabradios li div.selected' ).css( 'display', 'none' );

		// mostra todos notSelected
		$( 'ul.tabradios li div.notSelected' ).show( );
		$( 'ul.tabradios li div.notSelected' ).css( 'display', 'inline' );

		// esconde o container do link clicado
		$(this).parent( ).hide( );
		$(this).parent( ).css( 'display', 'none' );

		// mostra o selected do clicado
		$(this).parent( ).parent( ).children( 'div.selected' ).show( );
		$(this).parent( ).parent( ).children( 'div.selected' ).css( 'display', 'inline' );

		montaListagem( idRadio, null );

		return false;
	});

	// inicializa abas
	$( 'ul.tabradios li' ).each(function ( ) {
		var html = '<div class="selected" style="display: inline;"><span>' + $(this).html( ) + '</span></div>' + 
				   '<div class="notSelected" style="display: inline;"><a href="#" id="' + $(this).attr( 'id' ) + '" class="noticiasTab">' + $(this).html( ) + '</a></div>';
		$(this).html( html );
	});

	// esconde divs
	$( 'ul.tabradios li div.selected' ).hide( );

	// clica na primeira
	$( 'ul.tabradios :nth-child(1) div.notSelected a.noticiasTab' ).click( );


	// ----------------------------------------
	// publicacoes - paginacao

	var paginacaoContainer = 'div.conteudo-int ul.paginacao';

	function montaPaginacao( count, offset )
	{
		if ( offset == null || offset == 'null' ) offset = 0;

		var totalPages = Math.ceil( count / window.LIMIT_INTERNA_PUBLICACOES );
		var currentPage = Math.ceil( offset / window.LIMIT_INTERNA_PUBLICACOES );;

		$( paginacaoContainer + ' li' ).remove( );

		if ( count <= 0 ) return;

		var totalLinksToShow = 10;

		if ( totalLinksToShow > totalPages ) totalLinksToShow = totalPages;

		var arr = new Array( totalLinksToShow );

		for ( i=0; i<totalLinksToShow; i++ ) arr[i] = null;

		var middlePosition = totalLinksToShow%2?(totalLinksToShow+1)/2:totalLinksToShow/2;

		if ( currentPage < middlePosition ) middlePosition = currentPage;

		arr[ middlePosition ] = currentPage;

		for ( i=middlePosition+1, j=currentPage+1; i<totalLinksToShow && j<totalPages; i++, j++ )
		{
			arr[i] = j;
		}

		var nullPositions = 0;
		for ( i=middlePosition; i<totalLinksToShow; i++ )
		{
			if ( arr[i] == null ) nullPositions++;
		}

		if ( nullPositions > 0 )
		{
			var arr__ = new Array( totalLinksToShow );

			for ( i=0; i<totalLinksToShow; i++ ) arr__[i] = null;

			for ( i=middlePosition; i<totalLinksToShow; i++ )
			{
				if ( arr[i] != null ) arr__[i+nullPositions] = arr[i];
			}

			arr = arr__;
		}

		for ( i=totalLinksToShow-1; i>=0; i-- )
		{
			if ( arr[i] == null && arr[i+1] - 1 >= 0 ) arr[i] = arr[i+1]-1;
		}

		var html = '<li>(Página ' + (currentPage+1) + ' de ' + totalPages + ')</li> ';

		for ( i=0; i<totalLinksToShow; i++ )
		{
			var currentOffset = arr[i] * window.LIMIT_INTERNA_PUBLICACOES;

			html += ( currentOffset == offset ) ?
					'<li><span>' + (arr[i]+1) + '</span></li>' :
					'<li><a href="#" rel="' + currentOffset + '" class="linkPaginacao">' + (arr[i]+1) + '</a></li>';
		}

		$( html ).appendTo( paginacaoContainer );
	};

	// evento click link da paginacao
	$( paginacaoContainer + ' a.linkPaginacao' ).live('click', function ( ) {
		montaListagem( idRadio, $(this).attr( 'rel' ) );
		return false;
	});

});
