/*
 * Javascript file for tribune
 */

jQuery(document).ready(function()
{
  // Hide show tribune form
  jQuery('#tribune a.toggle').click(function(e)
  {
    e.preventDefault();
    var form = jQuery('#tribune form');

    if(form.is(':visible'))
    {
      form.hide();
      jQuery('#tribune a.show').show();
    }
    else
    {
      jQuery('#tribune a.show').hide();
      form.slideDown();
    }
  });

  jQuery('#tribune a.ajax-submit').click(function(e)
  {
    e.preventDefault();
    var form = jQuery(this).parents('form');

    if(jQuery('#commentaire_pseudo', form).val() != undefined && jQuery('#commentaire_pseudo', form).val().length == 0)
    {
      valid = false;
      jQuery('#commentaire_pseudo', form).parents('li').addClass('error');
      return;
    }

    form.ajaxSubmit({
      success: function(html, statusText) {
        displayNotice('Votre message a été ajouté.');
        jQuery('#tribune form').hide();
        jQuery('#tribune a.show').show();

        form.find('textarea').val('');

        showPage(0);
      },
      error:  function(e) {displayError('Une erreur s\'est produite. Votre message n\'a pas été ajouté.');}
    })
  });

  /**
   * Display a specific tribune page
   */
  function showPage(page)
  {
    if(page < 0) page = 0;
    
    var button = jQuery(this);
    var url = jQuery('#tribune-url').val()+page;
    jQuery.ajax
    ({
      url: url,
      success: function(html) {
        jQuery('#tribune ul.tribune-list').html(html);
        jQuery('#tribune-page').val(page)

        if(page == 0)
        {
          jQuery('#tribune a.tribune-previous').hide();
        }
        else if(jQuery.trim(html).length == 0)
        {
          jQuery('#tribune a.tribune-next').hide();
        }
        else
        {
          jQuery('#tribune a.tribune-previous').show();
          jQuery('#tribune a.tribune-next').show();
        }
      },
      error:  function(e) {
      }
    });
  }

  if(jQuery('#tribune-page').val() == 0)
  {
    jQuery('#tribune a.tribune-previous').hide();
  }

  jQuery('#tribune a.tribune-previous').click(function(e)
  {
    e.preventDefault();

    var page = jQuery('#tribune-page').val();
    showPage(parseInt(page)-1);
  });

  jQuery('#tribune a.tribune-next').click(function(e)
  {
    e.preventDefault();

    var page = jQuery('#tribune-page').val();
    showPage(parseInt(page)+1);
  });
});



