// Script for Notices and Alerts //
var alert_number;
timerID = 0;

function stop_ticker()
{
	if(timerId)
	{
		clearTimeout(timerID);
		timerID=0;
	}

	return 1;
}

function http_request()
{
	var http;
	try
	{
		// Firefox ...
		http = new XMLHttpRequest();
	}
	catch(e)
	{
		// IE
		try
		{
			http = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
			try
			{
				http = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e)
			{
				return false;
			}
		}
	}

	return http;
}

function ticker()
{
	start_time = get_time();
	show_alert('alerts',0,'no');
}

function get_alerts(some_id,alert_number)
{
	http = http_request();

	http.onreadystatechange=function()
	{
		if(http.readyState == 4)
		{
			document.getElementById(some_id).innerHTML = http.responseText;
			
			alert_number += 1;
			timerId = setTimeout("show_alert('" + some_id + "'," + alert_number + ",'no')",5000);
		}
	}
	http.open("POST","http://uitsnews.iu.edu/wp-content/themes/uitsnews/scripts/ticker.php?alert_number=" + alert_number,true);
	http.send(null);
}

function get_time()
{
	var time = new Date();
	var unix_time = time.getTime();
	return unix_time;
}

// minutes: is the number of minutes to display alerts before timing out.
function is_time_up(minutes)
{
	ms = minutes * 60 * 1000;
	var current_time = get_time();

	if(current_time - start_time > ms)
	{
		document.getElementById('alerts').innerHTML = "<p>Please refresh your browser to receive the most up-to-date alerts.</p>";
		return 1;
	}
	else
	{
		return 0;
	}
}

function show_alert(some_id,alert_number,is_reset)
{
	if(is_reset == "yes")
	{
		clearTimeout(timerId);
	}
	// 7*24*60 gives 7 days before a timeout
	if(is_time_up(3))
	{
		return 1;
	}
	get_alerts(some_id,alert_number);
	//alert_number += 1;
	//timerId = setTimeout("show_alert('" + some_id + "'," + alert_number + ",'no')",5000);
}


window.onload = ticker;
