function searchYahoo(query) {
	if (query) {
		var url = "http://api.search.yahoo.com/NewsSearchService/V1/newsSearch?appid=adactio&language=en&results=3";
		url+= "&query=";
		url+= query;
		url+= "&output=json";
		url+= "&callback=parseResponse";
		if (document.getElementById("generated")) {
			var scripttag = document.getElementById("generated");
			scripttag.parentNode.removeChild(scripttag);
		}
		var scripttag = document.createElement("script");
		scripttag.setAttribute("type","text/javascript");
		scripttag.setAttribute("id","generated");
		scripttag.setAttribute("src",url);
		document.getElementsByTagName("head")[0].appendChild(scripttag);
	} else {
		var canvas = document.getElementById("container");
		emptyElement(canvas);
	}
}

function parseResponse(data) {
	var canvas = document.getElementById("container");
	emptyElement(canvas);
	for (var i=0; i<data.ResultSet.Result.length; i++) {
		var header = document.createElement("h2");
		var link = document.createElement("a");
		var url = data.ResultSet.Result[i].Url
		link.setAttribute("href",url);
		var titletext = data.ResultSet.Result[i].Title;
		var headertext = document.createTextNode(titletext);
		link.appendChild(headertext);
		header.appendChild(link);
		canvas.appendChild(header);
		var bodytext = data.ResultSet.Result[i].Summary;
		var para = document.createElement("p");
		var paratext = document.createTextNode(bodytext);
		para.appendChild(paratext);
		canvas.appendChild(para);
	}
}


function emptyElement(element) {
	while (element.hasChildNodes()) {
		element.removeChild(element.lastChild);
	}
}