var SlideOpacity = new Array();

var current_slide = -1;
var next_slide_timer = 0;

function slide_fade_in (id) {
	if (!SlideOpacity[id]) {
		SlideOpacity[id] = 0;
	}
	slide_opacity(id,SlideOpacity[id],100,250);
}

function slide_fade_out (id) {
	if (SlideOpacity[id]) {
		slide_opacity(id,SlideOpacity[id],0,250);
	}
	else {
		SlideOpacity[id] = 0;
	}
}

function slide_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("slide_changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            SlideOpacity[id] = i;
            timer++; 
        } 
    } else if(opacStart < opacEnd) { 
        for(i = opacStart; i <= opacEnd; i++) 
            { 
            setTimeout("slide_changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            SlideOpacity[id] = i;
            timer++; 
        } 
    }
} 

//change the opacity for different browsers 
function slide_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_slider() {
	read_last_slide();

	increment_slide_number();

	update_slide();

	slide_fade_in('slide_bg');

	next_slide_timer = setTimeout("next_slide();set_last_slide();",7000);
}

function increment_slide_number() {
	current_slide++;

	if (current_slide >= slide_headlines1.length) {
		current_slide = 0;
	}
}

function decrement_slide_number() {
        current_slide--;
 
        if (current_slide <= 0) {
		current_slide = slide_headlines1.length - 1;
        }
} 

function update_slide() {
	var slide_bg = document.getElementById('slide_bg').style;
	slide_bg.backgroundImage = "url(\'" + slide_backgrounds[current_slide] + "\')";

	var slide_headline1 = document.getElementById('slide_headline1');
	slide_headline1.lastChild.nodeValue = slide_headlines1[current_slide];
        
	var slide_headline2 = document.getElementById('slide_headline2');
	slide_headline2.lastChild.nodeValue = slide_headlines2[current_slide];
}

function next_slide() {
	clearTimeout(next_slide_timer);
	slide_fade_out('slide_bg');

	increment_slide_number();

	setTimeout("update_slide();slide_fade_in('slide_bg');",400);

	next_slide_timer = setTimeout("next_slide();set_last_slide();",9000);
}

function prev_slide() {
	clearTimeout(next_slide_timer);
	slide_fade_out('slide_bg');

        decrement_slide_number();

	setTimeout("update_slide();slide_fade_in('slide_bg');",400); 

	next_slide_timer = setTimeout("next_slide();",9000);
}

function read_more() {
	window.location = slide_links[current_slide];
}

function pause_timer() {
	clearTimeout(next_slide_timer);
}

function restart_timer() {
	next_slide_timer = setTimeout("next_slide();",9000);
}

function read_last_slide() {
  var last_slide = null;
  last_slide = GetCookie(slideviewer_name);
  if ((!last_slide) || (last_slide == null)) {
         current_slide = -1;
  }
  else {
	last_slide = last_slide * 1;
	current_slide = last_slide + 1;
  }
}

function set_last_slide() {   
  var exp = new Date();
  exp.setTime(exp.getTime() + (365*24*60*60*1000));
  SetCookie(slideviewer_name,current_slide,exp);
}
