/*
ls.vote
*/
ls.ajaxUrl.vote = {
}

ls.ready(function() {
	$$('[data-vote]').each(function(el) {
		el.getElements('a[href^=javascript]').addEvent('click', function() {
			var p = this.getParent(), data = el.parseData('vote'), value = false;
			$each({plus: 1, minus: -1, total: 0}, function(v, c) {
				if (p.hasClass(c)) value = v;
			});
			if (value !== false) {
		    	ls.json(data.target.ajaxUrl('vote'), $extend(data.params, {value: value}), function(result) {
		    		ls.alert(result.sMsgTitle, result.sMsg);
                	el.addClass('voted');
                	if (value > 0) el.addClass('plus');
                	if (value < 0) el.addClass('minus');
                	el.removeClass('negative').removeClass('positive');
                	var r = parseFloat(result.iRating), total = el.getElements('.total');
                	try {
                		if (r > 0) {
                			el.addClass('positive');
                			total.set('text', '+' + result.iRating);
                		} else if (r < 0) {
                			el.addClass('negative');
                			total.set('text', result.iRating);
                		} else total.set('text', '0');
                	} catch(e) {}
                	try {
                		el.getElement('.count').set('text', result.iCountVote);
                	} catch(e) {}
                	try {
                		el.getElement('.skill .total').set('text', result.iSkill);
                	} catch(e) {}
            	});
            }
            return!1;
		});
	});
});
