var otziv_mark = -1;

function otziv_likeOtziv(comment_id, user_id)
{
	if(user_id < 2)
	{
		alert('Голосовать могут только зарегистрированные пользователи');
		return;
	}
	jQuery.get('/prodotzivi/',
		{
			vote: 1,
			comment_id: comment_id
		},
		function(data)
		{
			/*var rating = otz_ge('otziv_rating_' + comment_id).innerHTML;
			rating = rating.substring(1);
			rating++;
			otz_ge('otziv_rating_' + comment_id).innerHTML = '+' + rating;*/
			otz_ge('otziv_rating_' + comment_id).innerHTML = '+' + data;
		}
	);
}

function otzivi_markClick(mark)
{
	otziv_mark = mark;
	otz_ge('otzivi_ball_input').value = mark;
	otzivi_mark_redraw(-1);
}

function otzivi_markMouseOut(mark)
{
	otzivi_mark_redraw(-1);
}

function otzivi_markMouseOver(mark)
{
	otzivi_mark_redraw(mark);
}

function otziv_showBigImage(src, obj)
{
	otz_ge('prod_otziv_pictures_img').src       = src;
	otz_ge('prod_otziv_pictures').style.top     = getOffset(obj).top - 500;
	otz_ge('prod_otziv_pictures').style.left    = getOffset(obj).left - 100;
	$('#prod_otziv_pictures').fadeIn(300);
}

/* service functions */

function otz_ge(id)
{
	return document.getElementById(id);
}

function otzivi_mark_redraw(mark)
{
	if(mark == -1)
	{
		mark = otziv_mark;
	}
	for(var i = 0; i <= mark; i++)
	{
		otz_ge('otz_mark_img_' + i).src = '/images/otzivi/crown1.gif';
	}
	for(var i = mark + 1; i < 10; i++)
	{
		otz_ge('otz_mark_img_' + i).src = '/images/otzivi/crown2.gif';
	}
}

/* even more */

function getOffset(elem)
{
    if (elem.getBoundingClientRect)
    {
        // правильный вариант
        return getOffsetRect(elem)
    }
    else
    {
        // пусть работает хоть как-то
        return getOffsetSum(elem)
    }
}

function getOffsetSum(elem)
{
    var top=0, left=0
    while(elem)
    {
        top = top + parseInt(elem.offsetTop)
        left = left + parseInt(elem.offsetLeft)
        elem = elem.offsetParent
    }
    return {top: top, left: left}
}

function getOffsetRect(elem)
{
    var box = elem.getBoundingClientRect()
    var body = document.body
    var docElem = document.documentElement
    var scrollTop = window.pageYOffset  || docElem.scrollTop  || body.scrollTop
    var scrollLeft = window.pageXOffset || docElem.scrollLeft || body.scrollLeft
    var clientTop = docElem.clientTop   || body.clientTop     || 0
    var clientLeft = docElem.clientLeft || body.clientLeft    || 0
    var top  = box.top +  scrollTop - clientTop
    var left = box.left + scrollLeft - clientLeft
    return { top: Math.round(top), left: Math.round(left) }
}
