var TriviaOpacity = new Array();

var current_trivia = -1;
var next_trivia_timer = 0;

function trivia_fade_in (id) {
	if (!TriviaOpacity[id]) {
		TriviaOpacity[id] = 0;
	}
	trivia_opacity(id,TriviaOpacity[id],100,250);
}

function trivia_fade_out (id) {
	if (TriviaOpacity[id]) {
		trivia_opacity(id,TriviaOpacity[id],0,250);
	}
	else {
		TriviaOpacity[id] = 0;
	}
}

function trivia_opacity(id, opacStart, opacEnd, millisec) { 
    //speed for each frame 
    var speed = Math.round(millisec / 100); 
    var timer = 0; 

    //determine the direction for the blending, if start and end are the same nothing happens 
    if(opacStart > opacEnd) { 
        for(i = opacStart; i >= opacEnd; i--) { 
            setTimeout("trivia_changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            TriviaOpacity[id] = i;
            timer++; 
        } 
    } else if(opacStart < opacEnd) { 
        for(i = opacStart; i <= opacEnd; i++) 
            { 
            setTimeout("trivia_changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            TriviaOpacity[id] = i;
            timer++; 
        } 
    }
} 

//change the opacity for different browsers 
function trivia_changeOpac(opacity, id) { 
    var object = document.getElementById(id).style; 
    object.opacity = (opacity / 100); 
    object.MozOpacity = (opacity / 100); 
    object.KhtmlOpacity = (opacity / 100); 
    object.filter = "alpha(opacity=" + opacity + ")"; 
} 

function initialize_triviapanel() {
	read_last_trivia();

	increment_trivia_number();

	update_trivia();

	trivia_fade_in('trivia_table');

	next_trivia_timer = setTimeout("next_trivia();set_last_trivia();",7000);
}

function increment_trivia_number() {
	current_trivia++;

	if (current_trivia >= triviapanel_texts.length) {
		current_trivia = 0;
	}
}

function decrement_trivia_number() {
        current_trivia--;
 
        if (current_trivia <= 0) {
		current_trivia = triviapanel_texts.length - 1;
        }
} 

function update_trivia() {
	var triviapanel_text = document.getElementById('triviapanel_text');
	triviapanel_text.lastChild.nodeValue = triviapanel_texts[current_trivia];
}

function next_trivia() {
	clearTimeout(next_trivia_timer);
	trivia_fade_out('trivia_table');

	increment_trivia_number();

	setTimeout("update_trivia();trivia_fade_in('trivia_table');",400);

	next_trivia_timer = setTimeout("next_trivia();set_last_trivia();",9000);
}

function prev_trivia() {
	clearTimeout(next_trivia_timer);
	trivia_fade_out('trivia_table');

        decrement_trivia_number();

	setTimeout("update_trivia();trivia_fade_in('trivia_table');",400); 

	next_trivia_timer = setTimeout("next_trivia();",9000);
}

function pause_trivia() {
	clearTimeout(next_trivia_timer);
}

function restart_trivia() {
	next_trivia_timer = setTimeout("next_trivia();",9000);
}

function read_last_trivia() {
  var last_trivia = null;
  last_trivia = GetCookie(triviapanel_name);
  if ((!last_trivia) || (last_trivia == null)) {
         current_trivia = -1;
  }
  else {
	last_trivia = last_trivia * 1;
	current_trivia = last_trivia + 1;
  }
}

function set_last_trivia() {   
  var exp = new Date();
  exp.setTime(exp.getTime() + (365*24*60*60*1000));
  SetCookie(triviapanel_name,current_trivia,exp);
}
