function initPressRoom() {
	//Attach behaviors to news headings
	dojo.query(".NewsHeading").forEach(function (result) {
		dojo.connect(result, "onmouseover", "showSummary");
		dojo.connect(result, "onmouseout", "hideSummary");
		result.timeout = null;
	});
	
	//Attach behavior to summaries
	dojo.query(".Summary").forEach(function (result) {
		dojo.connect(result, "onmouseover", "hideSummary");
	});
	
	initWidgets();
}

//Set classes of the news heading and its summary to an active state
function showSummary(e) {
	var news_id = e.currentTarget.href.split("?nid=")[1];
	var news = e.currentTarget;
	var summary = document.getElementById("Summary" + news_id);
	
	//Set all results to inactive state
	dojo.query(".NewsHeading").forEach(function (result) {
		if(result != news) {
			hideSummary(e, result);
		}
	});
	
	if(!dojo.hasClass(news, "Active") && news.timeout == null) {
		news.timeout = setTimeout(function () {
			if(news.timeout != null) {
				news.className += " Active";
				summary.className += " ActiveSummary";
				news.timeout = null;
			}
		}, 300);
	}
}

//Remove active state of news heading and its summary
function hideSummary(e, heading) {
	clearTimeout(e.currentTarget.timeout);
	e.currentTarget.timeout = null;
	
	//If heading is specified, reference the appropriate element
	if(heading) {
		var news_id = heading.href.split("?nid=")[1];
		heading.className = heading.className.split(" Active")[0];
	} else {
		//Prevent onmouseout from firing from nested elements
		if(!e) {
			var e = window.event;
		}
		
		var evt_target = (window.event) ? e.srcElement : e.target;
		
		if(evt_target.nodeName != "A") {
			return;
		}
		
		var evt_rel_target = (e.relatedTarget) ? e.relatedTarget : e.toElement;
		
		while(evt_rel_target && evt_rel_target != evt_target && evt_rel_target.nodeName != "BODY") {
			evt_rel_target = evt_rel_target.parentNode;
		}
		
		if(evt_rel_target == evt_target) {
			return;
		}
		
		var news_id = e.currentTarget.href.split("?nid=")[1];
		dojo.removeClass(e.currentTarget, "Active");
	}
	
	var summary = dojo.byId("Summary" + news_id);
	dojo.removeClass(summary, "ActiveSummary");
}

dojo.addOnLoad(initPressRoom);
