function eventVote (event) {
    var oTarget = $(event.target);

    if (oTarget.is('img')) {
        var sHref = oTarget.parent().attr('href');
        var oVoteElt = oTarget.parent().parent().parent();
    }
    else if (oTarget.is('a')) {
        var sHref = oTarget.attr('href');
        var oVoteElt = oTarget.parent();
        
        if (oVoteElt.is('li')) oVoteElt = oVoteElt.parent();
    }
    else return true;

    oVoteElt.empty()
        .append ('<img src="http://static.black-frames.net/img/ajax.gif" alt="loading ..." />');

    $.postJSON(sHref, function (oResponse, bSuccess) {
        if (oResponse.success == true && typeof(oResponse.message) != 'undefined') {
            oVoteElt.replaceWith($(oResponse.message).click(eventVote))
        }
        else
            if (typeof (oResponse.message) == 'undefined')
                oVoteElt.replaceWith ('<div class="vote"><span style="color: red;">Error</span></div>');
            else
                oVoteElt.replaceWith ('<div class="vote"><span style="color: red;">' + oResponse.message + '</span></div>');
    });

    return false;
}

$(document).ready (function () {
    $('.vote a').click(eventVote);
});