	// initiating vars
	var xmlHttp = createXmlHttpRequestObject();
	var rated = false;
	var rating_value = 0;
	var id;


	function createXmlHttpRequestObject() {
		var xmlHttp;
		try {
			xmlHttp = new XMLHttpRequest();
		}
		catch(e) {
			xmlHttp = false;
		}
		if(!xmlHttp) {
			alert("Error creating XMLHttpRequest object.");
		}
		else {
			return xmlHttp;
		}
	}

	function submit_rating() {
			
		if(xmlHttp) {
			try {
				var param = "id="+id+"&rate="+rating_value;
				xmlHttp.open("POST","includes/themesRatingRecord.php",true);
				xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				xmlHttp.setRequestHeader("Content-length", param.length);
				xmlHttp.setRequestHeader("Connection", "close")
				xmlHttp.onreadystatechange = handleRequestStateChange;
				xmlHttp.send(param);
			}
			catch(e) {
				alert("Can't connect to server:\n"+e.toString());
			}
		}
	}

	function handleRequestStateChange() {
		if(xmlHttp.readyState == 4) {
			if(xmlHttp.status == 200) {
				/*for (var i = 1; i <= 5; i++){
					// using this IE throws an error : ... does not support property or method
					/*rating = eval("document.rating.rating"+i);
					rating.disabled = true;
					}*/
				rated = true;
				alert(xmlHttp.responseText);
				// change bar message 
				document.getElementById('click').innerHTML = 'Theme rated! Thanks ^^';
				// change stars already rated
				for (var i = 1; i <= rating_value; i++) // fist I reach rate with highlighted stars
					document.getElementById('rating'+i).src = 'img/star_highlight.png'; //swap to checked images
				if (rating_value <5){
					for (var i = rating_value + 1; i <= 5; i++) // then I full with black
						document.getElementById('rating'+i).src = 'img/star_normal.png'; //swap to checked images
				}
			}
		}
	}

	function sendRating(){
		if(rated == false){
		submit_rating();
		} else {
			alert ('This theme is already rated!');
		}
	}

	function makeRating(item, p_rating_value) { //this gives the rating number of star

		if(rated == false){ // black stars
			for (var i = p_rating_value + 1; i <= 5; i++){
				// DOM ? 
				/*rating = eval("document.rating.rating"+i);
				rating.checked = false;
				rating.src = 'img/star_normal.png';*/
				// DOM rest
				document.getElementById('rating'+i).src = 'img/star_normal.png'; //set to unchecked images
			}
			for (var i = 1; i <= p_rating_value; i++) {
				// DOM IE
				/*rating = eval("document.rating.rating"+i);
				rating.checked = true;
				rating.src = 'img/star_highlight.png';*/
				// DOM rest
				document.getElementById('rating'+i).src = 'img/star_highlight.png'; //swap to checked images
			}
			rating_value = p_rating_value;
			id = item;
		}
	}

	// new function on mouse out give back the rating
	function backStars(oldrating) {
		if(rated == false){
			for (var i = 1; i <= oldrating; i++) 
				document.getElementById('rating'+i).src = 'img/star_no-highlight.png'; //swap to checked images
			for (var i = oldrating + 1; i <= 5; i++) 
				document.getElementById('rating'+i).src = 'img/star_normal.png'; //swap to checked images
			
		}
	//alert('$session_id');
	}