function xhr(method, url, data, cb, apply_para) {
	method = method.toLowerCase();
	var req;
	req = new XMLHttpRequest();
	req.open(method, url + (data && method == 'get' ? '?' + data : ''), true);
	req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	if (method == 'post') {
		req.setRequestHeader("Method", "POST " + url + " HTTP/1.1");
		req.setRequestHeader("Content-Length", data.length);
	}
	req.onreadystatechange = function() {
		if (req.readyState == 4 && req.status == 200) {
			if (cb) {
				cb.apply(null, [req].concat(apply_para));
			}
		}
	}
	req.send(data);
}

function nothing() { }

function validateEmail(email) {
	var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i ;
	if (filter.test(email)) {
		return true;
	} else {
		return false;
	}
}

function zertifikat_meinung (shop_id) {
	var zertifikat_meinung_errormsg = '';

	
	dexp = document.getElementById('bestelldatum').value.split('.');
	
	var orderat = new Date();
	orderat.setDate(dexp[0]);
	orderat.setMonth(dexp[1]-1);
	orderat.setFullYear(dexp[2]);



	
	if(document.getElementById('zert_rating').value==0) {
		zertifikat_meinung_errormsg = zertifikat_meinung_errormsg + '\nBitte wählen Sie die Anzahl der Sterne aus.';
	}
	if(document.getElementById('meinung').value=='Geben Sie hier Ihre persönliche Meinung ein.') {
		zertifikat_meinung_errormsg = zertifikat_meinung_errormsg + '\nBitte geben Sie eine Meinung ein.';
	} else {
		if(document.getElementById('meinung').value.length<5) {
			zertifikat_meinung_errormsg = zertifikat_meinung_errormsg + '\nBitte geben Sie eine Meinung ein.';
		}
	}
	if(document.getElementById('bestellnummer').value=='') {
		zertifikat_meinung_errormsg = zertifikat_meinung_errormsg + '\nBitte geben Sie Ihre Bestellnummer an.';
	}
	if(document.getElementById('bestelldatum').value=='') {
		zertifikat_meinung_errormsg = zertifikat_meinung_errormsg + '\nBitte geben Sie das Bestelldatum an.';
	} else {
		if(orderat.getTime()>document.getElementById('day_offset').value) {
			alert('Bitte warten Sie noch einige Tage! Sie werden dann als Käufer des Shops einen Link für die Bewertungsabgabe erhalten.');
			return false;
		}
	}
	if(!validateEmail(document.getElementById('email').value)) {
		zertifikat_meinung_errormsg = zertifikat_meinung_errormsg + '\nBitte geben Sie Ihre E-Mail Adresse an.';
	}
	
	if(zertifikat_meinung_errormsg!='') {
		alert('Fehler:' + zertifikat_meinung_errormsg);
	} else {
		postqry = 'shop_id='+shop_id+'&' + 
		'bewertung='+encodeURIComponent(document.getElementById('zert_rating').value)+'&' + 
		'bestellnummer='+encodeURIComponent(document.getElementById('bestellnummer').value)+'&' + 
		'bestelldatum='+encodeURIComponent(document.getElementById('bestelldatum').value)+'&' + 
		'mail='+encodeURIComponent(document.getElementById('email').value)+'&' + 
		'problem='+encodeURIComponent(document.getElementById('problem_select').value)+'&' + 
		'Mitarbeiter='+encodeURIComponent(document.getElementById('Mitarbeiter').value)+'&' + 
		'Kontaktart='+encodeURIComponent(document.getElementById('Kontaktart').value)+'&' + 
		'Bezahlt_am='+encodeURIComponent(document.getElementById('Bezahlt_am').value)+'&' + 
		'Zahlart='+encodeURIComponent(document.getElementById('Zahlart').value)+'&' + 
		'Ware_erhalten_am='+encodeURIComponent(document.getElementById('Ware_erhalten_am').value)+'&' + 
		'Paketnummer='+encodeURIComponent(document.getElementById('Paketnummer').value)+'&' + 
		'Postleitzahl='+encodeURIComponent(document.getElementById('Postleitzahl').value)+'&' + 
		'Paketdienst='+encodeURIComponent(document.getElementById('Paketdienst').value)+'&' + 
		'meinung='+encodeURIComponent(document.getElementById('meinung').value); 
		xhr('post', 'zertifikat_ajax_meinung.php?lang=de&shop_id='+shop_id, postqry, zertifikat_meinung_callback, [shop_id]);
	}
}

function zertifikat_meinung_callback (xhr_ret, shop_id) {
	xhr_response = xhr_ret.responseText.split(':');
	if(xhr_response[1]=='OK') {
		document.meinung.style.display='none';
		if(document.getElementById('zert_rating').value < 4) {
			document.getElementById('success_extramessage').innerHTML = 'Sie haben eine E-Mail erhalten, in der Sie Ihre kritische Kundenmeinung noch einmal bestätigen müssen!';
		} else {
			document.getElementById('success_extramessage').innerHTML = 'Wir werden prüfen, ob Sie tatsächlich Käufer dieses Shops sind und anschließend Ihre Kundenmeinung freischalten.';
		}
		document.getElementById('zert_success').style.display = '';
		document.getElementById('zert_success_iframe').src = 'zertifikat_ajax_meinung.php?shop_id='+shop_id+'&success=true';
		
	} else {
		document.meinung.style.display='none';
		alert('Error: '+xhr_ret.responseText);
		//alert('Fehler bei der Zuordnung, bitte benutzen sie den Link aus der E-Mail');
	}
}

function set_vote(stars) {
	document.forms[0].bewertung.value = stars;
	if(document.forms[0].bewertung.value > 3){
  		document.getElementById("zusatz_angaben").style.display = "none"; 		
	}		
	if(document.forms[0].bewertung.value < 4){
  		document.getElementById("zusatz_angaben").style.display = ""; 		
	}	
}

vote_name = new Array("", "Mangelhaft", "Ausreichend", "Befriedigend", "Gut", "Sehr gut");
function stars_mouseover(stars) {
    //zuerst : alle sterne aus
    for(var e=1;e<=5;e++) document.getElementById("stern_" + e).src='images/stern_grau_klein.png';
    //nun: die passenden anwaehlen    
    for(var i=1;i<=stars;i++) document.getElementById("stern_" + i).src='images/stern_gelb_klein.png';
    //bewertungstext setzen
    document.forms[0].bewertungstext.value = vote_name[stars];
}

function stars_mouseout() {
    //zuerst: wieder alle aus
    for(var e=1;e<=5;e++) document.getElementById("stern_" + e).src='images/stern_grau_klein.png';
    //nun: die gespeicherten setzen
    for(var i=1;i<=document.forms[0].bewertung.value;i++) document.getElementById("stern_" + i).src='images/stern_gelb_klein.png';
    //text loeschen
    //document.forms[0].bewertungstext.value ='';
	document.forms[0].bewertungstext.value = vote_name[document.forms[0].bewertung.value];
} 

function showProbleme(wert) {
	for (var i = 1; i <= 5; i++) {
		if(i!=wert) {
			document.getElementById("ekomi_" + i).style.display = "none";
		} else {
			document.getElementById("ekomi_" + wert).style.display = "";
		}
	}
  	return true;
}