var glowing_stars = new Array();

var STARS_FROZEN = false; // thanks IE!!!
var ATTACH_DONE = false;
//preload yellow stars.
for ( var i = 0; i <= 4; i++ ) {
	glowing_stars[i] = new Image();
	glowing_stars[i].src = 'images/star_yellow.gif';
}


function addEvent( obj, type, fn ) {
	if (obj.addEventListener)
		obj.addEventListener( type, fn, false );
	else if (obj.attachEvent)
	{
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
	}
}

function removeEvent( obj, type, fn ) {
	if (obj.removeEventListener)
		obj.removeEventListener( type, fn, false );
	else if (obj.detachEvent)
	{
		obj.detachEvent( "on"+type, obj[type+fn] );
		obj[type+fn] = null;
		obj["e"+type+fn] = null;
	}
}

function confirmDelete(url) {
	if ( window.confirm( "Are you sure you want to delete this review? OK = DELETE") ) {
		window.location.href = url;
	}
}

function byId(id) {
	return document.getElementById(id);
}

function ById(id) { byId(id); }

function grey_stars() {
        if ( !STARS_FROZEN ) {
            for ( var i = 0; i <= 4; i++ ) {
                    document.getElementById('star_' + (i+1)).src = 'images/star_grey.gif';
            }
        }
}

function glow_stars(star_num) {
        if ( !STARS_FROZEN ) {
            grey_stars();
            for ( var i = 0; i <= (star_num-1); i++ ) {
                    document.getElementById('star_' +  (i+1)).src = glowing_stars[i].src;
            }
        }
}

function freeze_stars() {
    STARS_FROZEN = true;
//	for ( var i = 0; i <= 4; i++ ) {
//                var tmp_obj = document.getElementById('star_'  + (i+1));
//		//document.getElementById('star_'  + (i+1)).onmouseover = function() {};
//		//document.getElementById('star_'  + (i+1)).onmouseout = function() {};
//                removeEvent(tmp_obj,'mouseover',function() {});
//
//                removeEvent(tmp_obj,'mouseout',function() {});
//	}
}

function activate_stars() { //undo freeze_stars, if user changes vote.
        STARS_FROZEN = false;
	grey_stars();
        if ( !ATTACH_DONE ) {
//            for ( var i = 0; i <= 4; i++ ) {
//                    var tmp_obj = document.getElementById('star_' +  (i+1));
//                    tmp_obj.class = i+1;
//                    var tmp_value = i+1;
//                    //tmp_obj.onmouseover = function() { glow_stars(this.class) };
//                    //tmp_obj.onmouseout = function() { grey_stars(this.class) };
//
//
//                    addEvent(tmp_obj,'mouseover',function() {
//
//                        glow_stars(tmp_value);
//                    });
//
//                    addEvent(tmp_obj,'mouseout',function() {
//
//                        grey_stars(tmp_value);
//                    });
//
//            }
//            ATTACH_DONE = true;
//            alert('hello');
        }
	document.getElementById('change_vote').style.display='none';
	document.getElementById('show_vote').innerHTML = "(Please click star)";
	document.getElementById('user_vote').value = -1;
}

function set_stars(rating) {
	freeze_stars();
	document.getElementById('show_vote').innerHTML = ' ' + rating + " stars";
	document.getElementById('change_vote').style.display='inline';
	document.getElementById('user_vote').value = rating;

        editor.focusEditor();
}

function check_review() {
	var rating = document.getElementById('user_vote').value;
	if ( rating == -1 || rating == 0 ) {
		window.alert('Please rate this Assessment by clicking on the stars under "Your Rating"')
		return false;
	}
	//window.alert(getHTMLAreaLength());
	if ( getHTMLAreaLength() < 13) {
		window.alert('Please write a review.');
		return false;
	}
	//document.getElementById('ta').value = getHTMLAreaData();
	document.getElementById('review_form').submit();
}

function getHTMLAreaLength() {
    //var tmp = getHTMLAreaData();
    var tmp = CKEDITOR.instances.ta.getData();
	return tmp.length;
}

function getHTMLAreaData() {
    return CKEDITOR.instances.ta.getData();
}

/*
 * voting on reviews 
 * 
 */



function review_report(review_id) {
	var markAsBad = window.confirm("Do you really want to report this review as hate speech, spam, or abuse??");
	if ( markAsBad ) {
		jh.call_php_function('review_report',review_id);
	}
}

function review_report_done(flag) {
	window.alert("Post has been reported. We will look into it ASAP. Thanks.");
}

function review_vote(review_id,vote_type) {
	jh.call_php_function('review_vote',review_id,vote_type)
}

function review_vote_done(vote_points,review_id,vote_type,unvote) {
    document.getElementById("was_helpful" + review_id).style.display = 'none';
    var it_was = document.getElementById('it_was'+review_id);
    it_was.innerHTML = parseInt(it_was.innerHTML) + vote_type;

    if ( parseInt(it_was.innerHTML) < 0 ) {
	it_was.innerHTML = '0';
    }

    var total_helpful = document.getElementById('total_helpful'+review_id);
    total_helpful.innerHTML = parseInt(total_helpful.innerHTML) + 1;
    //    alert(total_helpful.value);

    document.getElementById("twas_helpful" + review_id).style.display = 'inline';

    //it_was  total_helpful
    /*
	if ( unvote == 0 ) { //real vote
		if ( vote_type > 0 ) { //voted up
			byId('vote_up_' + review_id).src = 'images/vote-arrow-up-on.png';
			byId('vote_down_' + review_id).src = 'images/vote-arrow-down.png';
		} else { //voted down
			byId('vote_up_' + review_id).src = 'images/vote-arrow-up.png';
			byId('vote_down_' + review_id).src = 'images/vote-arrow-down-on.png';
		}
	} else { //unvote ...undoing a previous vote
		byId('vote_up_' + review_id).src = 'images/vote-arrow-up.png';
		byId('vote_down_' + review_id).src = 'images/vote-arrow-down.png';
	}
	if ( vote_points >=0 && vote_points < 10 ) { //for pretty centering of numbers...
		byId('points_'+review_id).innerHTML = '&nbsp;' + vote_points;
	} else {
		byId('points_'+review_id).innerHTML = '' + vote_points;
	}
    */
}

function post_vote_error(flag) {
	window.alert("You can't vote on your own posts!");
}

