var ratings = new sack('/execute/rate_article.cfm');
var post_id = 0;
var post_rating = 0;
var rate_fadein_opacity = 0;
var rate_fadeout_opacity = 100;
var is_ie = (document.all && document.getElementById);
var is_moz = (!document.all && document.getElementById);
var is_being_rated = false;
var ratings_mouseover_image = new Image();
var ratings_max = 5;
ratings_mouseover_image.src = '/images/star_over.gif';

function rade_fadein_text() {
	if(rate_fadein_opacity < 100) {
		rate_fadein_opacity += 10;
		if(is_ie) document.getElementById('post_Rating').filters.alpha.opacity = rate_fadein_opacity;
		if(is_moz) document.getElementById('post_Rating').style.MozOpacity = (rate_fadein_opacity/100);
		setTimeout("rade_fadein_text()", 100); 
	} else {
		rate_fadein_opacity = 100;
		rate_unloading_text();
		is_being_rated = false;
	}
}

function current_rating(id, rating) {
	if(!is_being_rated) {
		post_id = id;
		post_rating = rating;
		for(i = 1; i <= rating; i++) {
			document.images['rating_' + i].src = '/images/star_over.gif';
		}
	}
}

function ratings_off(rating_score, insert_half) {
	if(!is_being_rated) {
		for(i = 1; i <= ratings_max; i++) {
			if(i <= rating_score) {
				document.images['rating_' + i].src = '/images/star_high.gif';
			} else if(i == insert_half) {
				document.images['rating_' + i].src = '/images/star_half.gif';
			} else {
				document.images['rating_' + i].src = '/images/star_dim.gif';
			}
		}
	}
}

function rate_loading_text() {
	document.getElementById('rating_Loading').style.display = 'block';
}

function rate_unloading_text() {
	document.getElementById('rating_Loading').style.display = 'none';
}

function rate_post() {	
	if(!is_being_rated) {
		is_being_rated = true;
		rate_loading_text();
		rate_process();		
	} else {		
		alert('Please wait while your vote is recorded.');
	}
}

function rate_process() {
	if(rate_fadeout_opacity > 0) {
		rate_fadeout_opacity -= 10;
		if(is_ie) document.getElementById('post_Rating').filters.alpha.opacity = rate_fadeout_opacity;
		if(is_moz) document.getElementById('post_Rating').style.MozOpacity = (rate_fadeout_opacity/100);
		setTimeout("rate_process()", 100); 
	} else {
		rate_fadeout_opacity = 0;		
		ratings.setVar("id", post_id);
		ratings.setVar("rate", post_rating);
		ratings.method = 'GET';
		ratings.element = 'post_Rating';
		ratings.onCompletion = rade_fadein_text;
		ratings.runAJAX();
		rate_fadein_opacity = 0;
		rate_fadeout_opacity = 100;
	}
}