star = new Image();
star.src = 'img/star.png';
starb = new Image();
starb.src = 'img/starb.png';
starh = new Image();
starh.src = 'img/starh.png';
starn = new Image();
starn.src = 'img/starn.png';
starg = new Image();
starg.src = 'img/starg.png';
starhg = new Image();
starhg.src = 'img/starhg.png';

ratetextBackup = '';
backupRatetext = true;

function setStars(m,n) {
	active = document.getElementById('rate_active-'+m).value=='true';

	if(active) {
		for(j = 1; j <= 5; j++) { document['star'+j+'-'+m].src = starn.src; }
	
		var ratetext = document.getElementById('text-'+ m);
		if(n == 1) { ratetext.innerHTML = 't&ouml;dlich'; }
		if(n == 2) { ratetext.innerHTML = 'igitt'; }
		if(n == 3) { ratetext.innerHTML = 'okay'; }
		if(n == 4) { ratetext.innerHTML = 'gut'; }
		if(n == 5) { ratetext.innerHTML = 'super!'; }
	
		while(n >= 1) {
			document['star'+n+'-'+m].src = star.src;
			n--;
		}
	}
}

function resetStars(m) {
	n = document.getElementById('rating-'+m).value;

	active = document.getElementById('rate_active-'+m).value=='true';

	n = Math.round(2*n)/2
	for(j = 1; j <= 5; j++) { document['star'+j+'-'+m].src = starn.src; }

	if(2*n % 2 == 1) { document['star'+Math.ceil(n)+'-'+m].src = active ? starh.src : starhg.src; n -= 0.5; }	
	while(n >= 1) {
		document['star'+n+'-'+m].src = active ? star.src : starg.src;
		n--;
	}

	rating_amt = document.getElementById('rating_amt-'+m).value;

	var ratetext = document.getElementById('text-'+ m);
	ratetext.innerHTML = rating_amt+" Bew.";
}

function rate(m_id, rating)
{ 
	ajaxdata("./ajax/rate.php?m_id=" + m_id + "&rating=" + rating, answerRate, m_id, rating, null);
}

function answerRate(output, m_id, vote, nop)
{
	var rateResult = eval('('+output+')');
	var rating = rateResult.rating;
	var rating_amt = rateResult.rating_amt;

	var ratetext = document.getElementById('text-'+ m_id);
	document.getElementById('rating_amt-'+m_id).value = rating_amt;
	
	document.getElementById('rating-'+m_id).value = rating;
	document.getElementById('rate_active-'+m_id).value = "false";

	resetStars(m_id);
}


function ajax(url, callback, arg1, arg2, arg3)
{

        var request = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
 
        request.open("GET", "./" + url, true);

 
        request.onreadystatechange = function()
	{
		if(request.readyState == 4 && (request.status == 200 || request.status == 302 || request.status == 301))
		{
			if(request.responseText.indexOf("AJAXOK") != -1)
			{
				callback(arg1, arg2, arg3);
			}
		}
        }
        request.send(null);
}

function notLoggedIn() {
	alert('Um abstimmen zu koennen, musst du dich einloggen. Klicke einfach oben auf Login.');
}

function markMeal(m_id, colora, colorb) {
	if(m_id != null) {
		ajaxdata("./ajax/mark.php?m_id=" + m_id, trmark, m_id, colora, colorb);
	}
}

function trmark(status, m_id, colora, colorb) {
	if(status == '1') {
		document.getElementById('tr-'+ m_id).style.backgroundColor=colora;
	} else {
		document.getElementById('tr-'+ m_id).style.backgroundColor=colorb;
	}
}

function ajaxdata(url, callback, arg1, arg2, arg3)
{

        var request = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
 
        request.open("GET", "./" + url, true);

 
        request.onreadystatechange = function()
	{
		if(request.readyState == 4 && (request.status == 200 || request.status == 302 || request.status == 301))
		{
			callback(request.responseText, arg1, arg2, arg3);
		}
        }
        request.send(null);
}
