function recommend( to, name, mailid ) 
{
	if ( !isEmail(to) || name == "" ) {
	  var string = "Deine Eingabe ist fehlerhaft, bitte &uuml;berpr&uuml;fe das Formular auf Vollst&auml;ndigkeit und versuche es erneut.";
		setStatus ( "recommendStatus", string, "error" );
		return false;
	}
	
	setStatus ( "recommendStatus",  "Deine Empfehlung wird verschickt, bitte habe einen Augenblick Geduld." , "wait");
	var URL = "/cgi-bin/ajax/mail.pl?id="+mailid+"&rec="+escape(to)+"&name="+escape(name)+"&url="+escape(location.href);
	ajaxSendRequest(URL, setRecommend);
	return false;
}

function setRecommend( req ) 
{
	resp = req.responseText;
	
	if ( resp == 1 ){
			setStatus("recommendStatus", "Deine Empfehlung wurde erfolgreich verschickt.", "success");
	} else {
			setStatus("recommendStatus", "Deine Empfehlung konnte nicht verschickt werden. ("+req.responseText+")", "error");
	}
}

function comment( to, name, mailid ) 
{
	if ( !isEmail(to) || name == "" ) {
	  var string = "Deine Eingabe ist fehlerhaft, bitte &uuml;berpr&uuml;fe das Formular auf Vollst&auml;ndigkeit und versuche es erneut.";
		setStatus ( "recommendStatus", string, "error" );
		return false;
	}
	
	setStatus ( "recommendStatus",  "Deine Empfehlung wird verschickt, bitte habe einen Augenblick Geduld." , "wait");
	var URL = "/cgi-bin/ajax/mail.pl?id="+mailid+"&rec="+escape(to)+"&name="+escape(name)+"&url="+escape(location.href);
	ajaxSendRequest(URL, setRecommend);
	return false;
}

function setComment( req ) 
{
	resp = req.responseText;
	
	if ( resp == 1 ){
			setStatus("recommendStatus", "Dein Kommentar wurde erfolgreich gespeichert.", "success");
	} else {
			setStatus("recommendStatus", "Dein Kommentar konnte nicht gespeichert werden. ("+req.responseText+")", "error");
	}
}

function setStatus ( id, string, classNew ) 
{
	var obj = document.getElementById(id);
	
	obj.innerHTML = string + "<br />";
	obj.style.display = "block";
	
	obj.className = classNew;
}

function rate( modpk, refpk, rating )
{
	setStatus ( "rateStatus", "Deine Bewertung wird eingetragen, bitte habe einen Augenblick Geduld.", "wait");
	var URL = "/cgi-bin/ajax/rate.pl?modpk="+modpk+"&refpk="+refpk+"&rat="+rating+"&rand="+Math.random();
	ajaxSendRequest(URL, setRated);
}

function setRated(req)
{
	resp = req.responseText;
	resp = resp.split( "#" );
   

	if ( resp[0] == 0 ) {
		setStatus ( "rateStatus", "Beim Eintragen Deiner Bewertung ist leider ein Fehler aufgetreten.", "error");
		return;
	}
	
	//switch ( resp[0] ) {
		//case "-2":
		//string = "nicht empfehlenswert";
		//break;
		
		//case "-1":
		//string = "unterdurchschnittlich";
		//break;
		
		//case "1":
		//string = "empfehlenswert";
		//break;
		
		//case "2":
		//string = "sehr empfehlenswert";
		//break;
	
	//}
	
	//if ( resp[1] < -25 ) {
		//img = "/img/rating/res_1.gif";
	//} else if ( resp[1] < 0 ) {		
		//img = "/img/rating/res_2.gif";
	//} else if ( resp[1] > 25 ) {		
		//img = "/img/rating/res_5.gif";
	//} else if ( resp[1] > 0 ) {		
		//img = "/img/rating/res_4.gif";
	//} else {
		//img = "/img/rating/res_3.gif";
	//}
	
	setStatus("rateStatus", "Deine Bewertung wurde erfolgreich eingetragen.", "success");
	
	writeStars(5,resp[1],resp[2],resp[3]);
	
	//document.getElementById('count_rating').innerHTML = parseInt(document.getElementById('count_rating').innerHTML)+1;
	//document.getElementById('ratImg').src 						= img;
	//document.getElementById('rating').innerHTML 			= "Du hast mit <b>"+string+"</b> bewertet.";
}

function isEmail ( mail ) 
{
	var tmp = mail.search(/^..+@..+\..{2,4}$/);
	
	if ( tmp == -1 ){
		return false;
	}
	
	return true;
}


var clickedStar = 0;
var clicked = 0;

function starEval(d, n, modPk, refPk) {
	var actStar = d.id;
	
	var stars = d.parentNode.getElementsByTagName("a");

	if(n == 1) {
		if ( clickedStar == 0 ) {
			for(i=0; i<actStar; i++) {
				stars[i].className = "staron";	
			}
		}
		else {
			var tmp = actStar;
			if (clickedStar > actStar){
				tmp = clickedStar;
			}
			for(i=0; i<tmp; i++) {
				if ( i < actStar ) {
					stars[i].className = "staron";	
				}
				else {
					stars[i].className = "";	
				}
			}
		}
	}
	if ( clicked == 0 ) {
		if(n == 2) {
			clicked = 1;
			//Stern Nummer: actStar für ajax;
			clickedStar = actStar;
			rate(modPk,refPk,actStar)
		}
		if(n == 0 || n == 2) {
			for(i=0; i<5; i++) {
				stars[i].className = "";	
			}
			if ( clickedStar == 0 ) {
				for(i=clickedStar; i<stars.length; i++) {
					stars[i].className = "";	
				}
			}
			else {
				for(i=0; i<clickedStar; i++) {
					stars[i].className = "staron";	
				}
			}
		}
	}
	else {
		if(n == 2){
			alert('Du hast bereits bewertet!');
		}
	}
}

//ausgabe

function writeStars(n, c, modPk, refPk, r) {
	clickedStar = c;
	var output = "";
	for(i=1; i<=n; i++) {
		if ( r == 0 ) {
			output += '<a href="javascript://" onclick="starEval(this,2,'+modPk+','+refPk+')" onmouseover="starEval(this,1,'+modPk+','+refPk+')" onmouseout="starEval(this,0,'+modPk+','+refPk+')" id="'+i+'"';
		}
		else if ( r == 1 || clicked == 1 ) {
			output += '<a href="javascript://" onclick="alert(\'Du hast bereits bewertet!\')" id="'+i+'"';
		}
		else {
			output += '<a href="javascript://" onclick="alert(\'Um diesen Artikel zu bewerten musst du eingeloggt sein!\')" id="'+i+'"';
		}
		
		if(i<=clickedStar) output += ' class="staron"';
		output += '></a>\n';				
	}
	document.getElementById("stars").innerHTML = output;
}

function flip(id)
{
	obj = document.getElementById(id);
	
	if ( !obj ){
		return;
	}
	
	if ( obj.style.display == "none" ){
		obj.style.display = "block";
	} else {
		obj.style.display = "none";
	}
}
