var slider = new Object();
slider.data = [];
slider.current = [];
slider.time = [];
slider.timer = [];

slider.create = function(id) {
	if($('#'+id).length>0) {
		slider.data[id] = [];
		$('#'+id).html("<div class='switch'></div><div class='images'></div>");
		return true;
	} else {
		alert("cannot find div: '"+id+"'.");
		return false;
	}
}

slider.addImage = function(id, url, link, target) {
	if(slider.data[id] && url) {
		var image = new Object();
		image.url = url;
		image.link = link;
		if(!target) {
			target = "_self";
		}
		image.target = target;
		slider.data[id].push(image);
		return true;
	} else {
		alert("failed to add image '"+url+"' to slider '"+id+"'.");
		return false;
	}
}

slider.refresh = function(id) {
	if($('#'+id).length>0 && slider.data[id]) {
		for(var i=0; i<slider.data[id].length; i++) {
			var imageHTML = "<div sid=\""+id+","+i+"\"><a href=\""+slider.data[id][i].link+"\" target=\""+slider.data[id][i].target+"\"><img src=\""+slider.data[id][i].url+"\" /></a></div>";
			$('#'+id+' .images').append(imageHTML);
		}
		$('[sid^='+id+'][sid!='+id+',0]').hide();
		$('#'+id+' .switch').append("<div class=\"links\"></div><img src=\"images/slidesw_bg2.gif\" class=\"endcap\" />");
		$('#'+id+' .links').append("<a href=\"#\" onclick=\"slider.change('"+id+"', 'prev');\">&lt;</a> |");
		for(var i=0; i<slider.data[id].length; i++) {
			$('#'+id+' .links').append(" <a href=\"#\" lid=\""+i+"\" onclick=\"slider.change('"+id+"', '"+i+"');\">"+(i+1)+"</a> |");
		}
		$('#'+id+' .links').append(" <a href=\"#\" onclick=\"slider.change('"+id+"', 'next');\">&gt;</a>");
		slider.current[id] = 0;
		switchWidth = (slider.data[id].length*20)+50;
		$('#'+id+' .switch').width(switchWidth);
		$('#'+id+' .endcap').css("left", switchWidth+'px');
		$("a[lid=0]").addClass("current");
	} else {
		alert("failed to update slider "+id+".");
	}
}

slider.change = function(id, to) {
	if(slider.timer[id] && to != "timer") {
		clearInterval(slider.timer[id]);
		slider.timer[id] = setInterval( "slider.change('"+id+"', 'next')", slider.time[id]);
	}
	if(to == "prev") {
		to = parseInt(slider.current[id])-1;
	} else if(to == "next" || to == "timer") {
		to = parseInt(slider.current[id])+1;
	}
	if(to<0) {
		to = slider.data[id].length-1;
	} else if(to>=slider.data[id].length) {
		to = 0;
	}
	if(to>=0 && to < slider.data[id].length && to != slider.current[id]) {
		$('[sid='+id+','+slider.current[id]+']').hide();
		$('[sid='+id+','+to+']').slideDown("normal");
		slider.current[id] = to;
	}
	$("a[lid]").removeClass("current");
	$("a[lid="+to+"]").addClass("current");
}

slider.start = function(id, time) {
	slider.time[id] = time;
	slider.timer[id] = setInterval( "slider.change('"+id+"', 'timer')", slider.time[id]);
}

slider.hide = function(id, num) {
	$('[sid='+id+','+num+']').hide();
}

slider.click = function(url) {
	window.location = url;
}

//onclick=\"slider.click('"+slider.data[id][i].link+"');\" 
