/**
 * @package Zazula Content Moderation
 * @author Sebastian Szulc
 * @version 0.1
 */
/*
Plugin Name: Zazula Moderation
Plugin URI: http://www.zazula.pl/
Description: EN: This plugin lets you automatically moderate comments on your blog. PL: Ten plugin umożliwia automatyczną moderację komentarzy na Twoim blogu.
Author: Sebastian Szulc
Version: 0.1
Author URI: http://www.zazula.pl/
*/

var zazula_request = false;

function zazula_ajax_handler(transport, json)
{
  var response = transport.responseText.evalJSON();
  if('' != response)
  {
    switch( response.a )
    {
      case 'flag':
        alert('Zgłoszenie przyjęte. Dziękujemy.');
        break;
      default:
        var el = $('zazula_'+response.a+'_'+response.c);
        el.innerHTML = response.v;
    }
  }
  zazula_request = false;
}

function zazula_flag(commentId)
{
  if( ! zazula_request )
  {
    zazula_request = true;
    var flag_comment = prompt('Podaj powód naruszenia regulaminu:', '');
    if (flag_comment == null )
    {
      zazula_request = false;
    }
    else
    {
      var req=zazula_handler + '?ret=json';
      var zr = new Ajax.Request(req, {
        method:'post',
        parameters: {c:commentId, a:'flag', comment:flag_comment},
        onSuccess: zazula_ajax_handler,
        onFailure: function(){ zazula_request=false; }
      });
    }
  }
  return false;
}

function zazula_thumbsup(commentId)
{
  if( ! zazula_request )
  {
    zazula_request = true;
    var req=zazula_handler + '?ret=json';
    var zr = new Ajax.Request(req, {
      method:'post',
      parameters: {c:commentId, a:'thumbsup'},
      onSuccess: zazula_ajax_handler,
      onFailure: function(){ zazula_request=false; }
    });
  }
  return false;
}

function zazula_thumbsdown(commentId)
{
  if( ! zazula_request )
  {
    zazula_request = true;
    var req=zazula_handler + '?ret=json';
    var zr = new Ajax.Request(req, {
      method:'post',
      parameters: {c:commentId, a:'thumbsdown'},
      onSuccess: zazula_ajax_handler,
      onFailure: function(){ zazula_request=false; }
    });
  }
  return false;
}
