function rateMove(obj, name, evt, id, minRate, maxRate, hideWords) {
        if (document.all && !window.opera) evt=event;
	var rate = getRate(obj.offsetWidth, getCCWT(evt).x, minRate, maxRate);
	obj.style.cursor="hand";
	var ratePercent = Math.round(((rate - minRate + 1) / (maxRate - minRate + 1)) * 100);
	$(name).style.width = ratePercent + '%';
	if (!hideWords) {
                $(id + 'Phrase').innerHTML = gs[id][rate];
    } 
}

function getRate(width, x, minRate, maxRate) {
	var part = 1 / (maxRate - minRate + 1);
	var rate =  Math.ceil((x / width) / part);
	if (0 == rate) {
		rate = minRate;
	}
        return rate;
}

function rateOut(name, id, hideWords) {
	$(name).style.width = '0%';
    if (!hideWords) {
        $(id + 'Phrase').innerHTML = '&nbsp;';
    } 
}

function rateIt(obj, name, evt, id, minRate, maxRate, changeRateView, hideWords) {
	if(document.all && !window.opera) evt=event;
	var rate = getRate(obj.offsetWidth, getCCWT(evt).x, minRate, maxRate);
	$(id).value = rate;
	obj.onmousemove = null;
	$(name).onmouseout = null;
	obj.onclick = null;
	var getUrl = form2Get($(id + 'Form'));
	if ($(id).value) {
                // odpalamy AJAXa
	       	WP.ajax.get( {
                        'url'       : 	getUrl,
	            	'onSuccess' : 	function (ajax) {
                                if(0 < parseInt(ajax.text)) {
                                        $(obj.id).hide();
		            		$(id + 'ImgBlock').style.width = $(name).style.width;
		            		$(id + 'ImgContainerBlock').show();
                                        if (!hideWords) {
                                                $(id + 'Phrase').hide();
                                                $(id + 'PhraseBlock').innerHTML = gs[id][rate];
                                                $(id + 'PhraseBlock').show();
                                        }
		            		if (changeRateView) {
                                                eval(id + 'ViewChange(rate)');
                                        }
                                } else {
                                        alert('Nie udało się oddać głosu. Spróbuj poźniej.');
                                }
                        }
	        } );
        }
}

function getCCWT(evt) {
        var coords = { x: 0, y: 0 };
	if(document.all && !window.opera) {
                evt = window.event;
		coords.x=evt.offsetX;
		coords.y=evt.offsetY;
	} else {
		var Element=evt.target;
		var cTLeft=0;
		var cTTop=0;
		while (Element.offsetParent) {
			cTLeft+=Element.offsetLeft;
			cTTop+=Element.offsetTop;
			Element = Element.offsetParent;
		}
		coords.x=evt.pageX-cTLeft;
		coords.y=evt.pageY-cTTop;
	}
	return coords;
}

function form2Get(form) {
	var urlParams = '';
	for (var i=0; i < form.length; i++) {
                var param = form[i];
		if (param.name && param.value) {
			if (urlParams) {
				urlParams += '&';
			}
			urlParams += param.name + '=' + param.value;
		}
	}
	return form.action + '?' + urlParams;
}

