var x = 0; var y = 0;
var posx = 0; var posy = 0;
var notes_descriptions = new Array( 'Mauvais', 'Pas mal', 'Bien', 'Très bien !', 'Incontournable !!' );

function mouseMove (evt)
{
  var scrolltop=0; var scrollleft=0;
  if (document.layers) {
    x=evt.x; y=evt.y;
  }
  if (document.all) {
    x=event.clientX; y=event.clientY;
  } else {
    if (document.getElementById) {
      x=evt.clientX; y=evt.clientY;
    }
  }

  if (document.documentElement && document.documentElement.scrollTop)
  {
    scrolltop = document.documentElement.scrollTop;
    scrollleft = document.documentElement.scrollLeft;
  }
  else if (document.body)
  {
    scrolltop = document.body.scrollTop;
    scrollleft = document.body.scrollLeft;
  }

  posx = scrollleft + x;
  posy = scrolltop + y;
}


function show_popup(text, is_file_sensitive)
{
  var layer = document.getElementById('preview');
  layer.innerHTML = text;

  if(is_file_sensitive == 1)
    layer.className = 'panel_sensitive';
  else
    layer.className = 'panel';

  layer.style.display = 'block';
}

function place_popup()
{
  var layer = document.getElementById('preview');

  if((x + layer.clientWidth + 30) >= document.documentElement.clientWidth)
    layer.style.left = (posx - layer.clientWidth) + 'px';
  else
    layer.style.left = (posx + 20) + 'px';


  if((y + layer.clientHeight + 30) >= document.documentElement.clientHeight)
   layer.style.top = (posy - layer.clientHeight) + 'px';
  else
    layer.style.top = posy+20 + 'px';
}

function file_popup(image, ext, size, date, description, hits, is_file_sensitive)
{
  if(image != '')
    image_fin = '<span class="small"><img src="' + image + '" /><br />';
  else
    image_fin = '<span class="small">[ Pas de miniature ]<br />';

  if(image == -1)
    image_fin = '<span class="small">';

  show_popup(image_fin + '<b>Date :</b><br />' + date + '<br /><b>Hits :</b> ' + hits + '<br/><br /><b>Description :</b><br />' + description +
             '</span>', is_file_sensitive);
}

function hide_popup()
{
  document.getElementById('preview').style.display = 'none';
}

function show_hide(elem)
{
  var doc_elem = document.getElementById(elem)
  doc_elem.style.display = doc_elem.style.display == 'none' ? 'block' : 'none';
}

function show( elem )
{
  var doc_elem = document.getElementById(elem)
  doc_elem.style.display = 'block';
}

function hide( elem )
{
  var doc_elem = document.getElementById(elem)
  doc_elem.style.display = 'none';
}

function limit_chars(elem, max_chars)
{
  if(elem.value.length > max_chars)
    elem.value = elem.value.substring(0, max_chars);

   var chars_left = document.getElementById('chars_left');
   chars_left.innerHTML = max_chars - elem.value.length;
}

function over_note( note, note_totale )
{
  var elem = document.getElementById( 'description_note' );

  if( elem != null )
    elem.innerHTML = notes_descriptions[note - 1];

  for( i = 1 ; i <= note ; i++ )
  {
    img_note = document.getElementById( 'img_note_' + i );

    if( img_note != null )
      img_note.src = '/templates/images/note_over.png';
  }

  for( i = note + 1 ; i < notes_descriptions.length ; i++ )
  {
    img_note = document.getElementById( 'img_note_' + i );

    if( img_note != null )
    {
      if( i <= Math.floor( note_totale ) )
        img_note.src = '/templates/images/note_active.png';
      else if( ( i - Math.ceil( note_totale ) ) == 0 )
        img_note.src = '/templates/images/note_moitie_active.png';
      else
        img_note.src = '/templates/images/note_desactive.png';
    }
  }


}

function out_note( note_totale )
{
  var elem = document.getElementById( 'description_note' );

  if( elem != null )
    elem.innerHTML = '&nbsp;';

  for( i = 1 ; i <= notes_descriptions.length ; i++ )
  {
    img_note = document.getElementById( 'img_note_' + i );

    if( img_note != null )
    {
      if( i <= Math.floor( note_totale ) )
        img_note.src = '/templates/images/note_active.png';
      else if( ( i - Math.ceil( note_totale ) ) == 0 )
        img_note.src = '/templates/images/note_moitie_active.png';
      else
        img_note.src = '/templates/images/note_desactive.png';
    }
  }
}

function addEngine( )
{
  if ((typeof window.sidebar == "object") && (typeof window.sidebar.addSearchEngine == "function"))
  {
    window.sidebar.addSearchEngine(
    "http://www.lelombrik.net/lelombrik.net.src",
    "http://www.lelombrik.net/lelombrik.net.png",
    "LeLoMBriK.net",
    "Rechercher sur LeLoMBriK.net");
  }
  else
  {
    alert( "Ce plugin ne fonctionne que pour Netscape et Firefox." );
  }
}

Votes = function() {
  var vote_sent = false;

  function attachVotes() {
    $('#vote a').each(function() {
        $(this).data('original_image', $(this).children('img').attr('src'));
        $(this).hover(starMouseOver, starMouseOut);
        $(this).click(sendVote);
    });
  };

  function starMouseOver(event) {
    var target = $(event.target);

    if(vote_sent)
      return;

    if(target[0].tagName == 'IMG')
      target = target.parent('a');

    var note = target.prevAll('a').size();

    $('#description_note').text(notes_descriptions[note]);

    target.prevAll('a').each(function() {
        $(this).children('img').attr('src', '/templates/images/note_over.png');
    });


    target.children('img').attr('src', '/templates/images/note_over.png');
  };

  function starMouseOut(event) {
    var target = $(event.target);

    if(vote_sent)
      return;

    if(target[0].tagName == 'IMG')
      target = target.parent('a');

    $('#description_note').html('&nbsp;');

    target.prevAll('a').each(function() {
        $(this).children('img').attr('src', $(this).data('original_image'));
    });

    target.children('img').attr('src', target.data('original_image'));
  };

  function sendVote(event) {
    var target = $(event.target).parent('a');

    if(vote_sent)
      return false;

    vote_sent = true;

    $('#vote').css('position', 'relative').css('height', $('#vote').height());

    $.ajax({
      url: target.attr('href'),
      success: sendVoteSuccess,
      error: sendVoteError
    });

    return false;
  };

  function sendVoteSuccess(data) {
    if(data['success'] !== undefined) {
      $('#vote-links').after('<div id="vote-results">' + data['note_html'] + '<br />' + data['nb_notes'] + ' votes</div>');
      $('#description_note').html('Merci de votre participation&nbsp;!');
      $('#description_note').addClass('vote-success');
      $('#description_note').attr('style', 'margin-bottom: 5px');
      $('#vote-results').fadeIn();
      $('#vote-links').fadeOut();
    }
    else if(data['error'] !== undefined) {
      $('#vote-block').addClass('vote-error');
      $('#vote-block').text(data['error']);
    }
  };

  function sendVoteError(data) {
  };

  return {
    attachVotes: attachVotes
  };
}();

if (document.layers)
  document.captureEvents(Event.MOUSEMOVE);

if (document.layers || document.all)
  document.onmousemove = mouseMove;

if (document.addEventListener)
  document.addEventListener('mousemove', mouseMove, true);

$(function() {
  Votes.attachVotes();
});

