$(document).ready(function(){
    initCommentVoting();
});

function initCommentVoting()
{
    $('.vote-up').click( function(e)
    {
		commentVoting(this);
        return false;
    });
    $('.vote-down').click( function(e)
    {

		commentVoting(this);
        return false;
    });
}

function commentVoting(elem)
{
	if (($(elem).id == 'articleUp') || ($(elem).id == 'articleDown'))
	{
		return false;
	}
    var data = '';    
    if (($(elem).hasClass('vote-up')))
    {
        data = 'up'; 
    }
    if (($(elem).hasClass('vote-down')))
    {
        data = 'down';
    }
    var idComment = $(elem).attr('rel');
    var commentSelector = $('#comment-'+idComment+' li.vote-count span');
    if (commentSelector.hasClass('comment-your'))
    {
    	return false;
    }
    if (data =='up' && commentSelector.hasClass('voted-minus')) {
    	return false;
    }
    if (data =='down' && commentSelector.hasClass('voted-plus')) {
    	return false;
    } 
    if ($('#comment-'+idComment+' a.show-hide span').hasClass('hide-me'))
    {
    	return false;
    }	
    var stamp = getStamp();
    $.ajax({
            data: {d: data, key: stamp,idComm: idComment},
            type: "POST",
            url: ($(elem).attr('href')+'Ajax'),
            timeout: 9000,
			cache : false,
            success: function(r) {
               var pos=r.indexOf(';');
               var colorClass = r.substr(0,pos);
               var resp = r.substr(pos+1);
               if (!$('#comment-'+idComment).hasClass('level'+colorClass))
               {
            	   $('#comment-'+idComment).removeClass('level1').removeClass('level2').removeClass('level3');
            	   $('#comment-'+idComment).addClass('level'+colorClass);
               }

			   $('#recsSpan-'+idComment).empty();
			   $('#recsSpan-'+idComment).html(resp);
			   class_name = 'marked-neutral';
			   
			   ulclass = 'vote comment-your';
			   if (parseInt(resp) > 0)
			   {
			   		class_name = 'ValueUp'; 
					ulclass = 'vote ul-voted-plus';					
			   }
			   
			   if (parseInt(resp) < 0)
			   {
			   		class_name = 'ValueDown';
					ulclass = 'vote ul-voted-minus';
			   }
			   
			    $('#recsSpan-'+idComment).attr('class',class_name);
				$('#recsUl-'+idComment).attr('class',ulclass);
               commentSelector = $('#comment-'+idComment+' li.vote-count span');
               var thisComment = commentSelector.parents('div.comment');
               var thisAvatar = thisComment.find('div.avatar');
               var userblockElements = thisComment.find('.user-block p');
               var thisBlock = thisComment.find('div.message-block');
               var thisContent = thisComment.find('div.message-block > *:not(:first-child)');               
               if (data == 'down' )
               { 
            	   commentSelector.addClass('voted-minus');
                   commentSelector.parents('ul.vote').removeClass('ul-voted-plus').addClass('ul-voted-minus');
                   commentSelector.parents('ul').find('li:eq(0) a span').show();
            	   $('#comment-'+idComment+' a.show-hide span').addClass('hide-me');
                   thisAvatar.hide();
                   userblockElements.hide();
                   thisContent.hide();
                   thisBlock.css('min-height','19px');            	   
               }                  
               else
               {
            	   commentSelector.addClass('voted-plus');
                   commentSelector.parents('ul.vote').removeClass('ul-voted-minus').addClass('ul-voted-plus');
                   $(thisAvatar).show();
                   $(thisContent).show();
                   $(thisBlock).css('min-height','min-height: 107px');
               }
               }
            });
}