/*
 * IE patch for more action in wiki pages
 */
//function showMoreActions() {
//	/*
//	 * Locate the first action button: targetLi.
//	 */
//	var actionsDiv = document.getElementById("actionsTop");
//	var uls = YAHOO.util.Dom.getElementsByClassName("", "ul", actionsDiv);
//	var targetLi = YAHOO.util.Dom.getChildren(uls[0])[0];
//	
//	/*
//	 * Insert all buttons in "More..." before targetLi.
//	 */
//	var sel = document.getElementById("actionsMore");
//	for(var i = 1; i < sel.options.length; i++) {
//		var href = sel.options[i].value;
//		var text = sel.options[i].title;
//		
//		var newLi = document.createElement("li");
//		
//		var newA = document.createElement("a");
//		newA.href = href;
//		YAHOO.util.Dom.addClass(newA, "action");
//		YAHOO.util.Dom.addClass(newA, "edit");
//		
//		var newText = document.createTextNode(text);
//		newA.appendChild(newText);
//		
//		newLi.appendChild(newA);
//		YAHOO.util.Dom.insertBefore(newLi, targetLi);
//	}	
//}

/*
 * Another version of showMoreActions, 
 * displaying a popup instead of laying out buttons horizontally.
 */
function showMoreActions() {
	var overlay = new YAHOO.widget.Overlay("actionOverlay", 
		{
			context: ["actionsMore", "tr", "br"],
			visible: false,
			width: "160px"
		}
	);
	
	var bd = "";
	var sel = document.getElementById("actionsMore");
	for(var i = 1; i < sel.options.length; i++) {
		var href = sel.options[i].value;
		var text = sel.options[i].title;
		bd += "<p><a href=\"" + href + "\">" + text + "</a></p>";
	}
//	bd += "<p>(Click \"More...\" to exit.)</p>"
	overlay.setBody(bd);
	overlay.render(document.body);
	
	YAHOO.util.Event.addListener("moreButton", "mouseover", 
		overlay.show, overlay, true);
//	YAHOO.util.Event.addListener("moreButton", "click", 
//		overlay.hide, overlay, true);
	YAHOO.util.Event.addListener("moreButton", "mouseout", 
		overlay.hide, overlay, true);
	YAHOO.util.Event.addListener("actionOverlay", "mouseover", 
		overlay.show, overlay, true);
	YAHOO.util.Event.addListener("actionOverlay", "mouseout", 
		overlay.hide, overlay, true);
}

/*
 * Initialise the left menu
 */
function initLeftMenu() {
	var loc = location.pathname;
	if (loc == "/" || loc == "/index.jhtml")
		return;
	
	var headers = YAHOO.util.Dom.getElementsByClassName('omii-leftmenu-header', 'a');
	var menus = YAHOO.util.Dom.getElementsByClassName('omii-leftmenu-submenu', 'div');
	
	var found = false;
	var index;
	var subIndex = -1;
	var items;
	for (var i = 0; i < headers.length; i++) {
		// endWith()
		var idx = headers[i].href.indexOf(loc);
		if (idx >= 0 && headers[i].href.length == idx + loc.length) {
			found = true;
			index = i;
			break;	
		}
		items = YAHOO.util.Dom.getElementsByClassName("", "a", menus[i]);
		for (var j = 0; j < items.length; j++) {
			idx = items[j].href.indexOf(loc);
			if (idx >= 0 && items[j].href.length == idx + loc.length) {
				found = true;
				index = i;
				subIndex = j;
				break;	
			}	
		}
	}
	
	if (found) {
		YAHOO.util.Dom.setStyle(headers[index], "margin-bottom", "2px");
		YAHOO.util.Dom.setStyle(menus[index], "display", "block");
		items = YAHOO.util.Dom.getElementsByClassName("", "a", menus[index]);
		YAHOO.util.Dom.addClass(items[items.length - 1], "omii-leftmenu-submenu-lastitem");
		if (subIndex != -1) {
			YAHOO.util.Dom.setStyle(items[subIndex], "color", "black");
		}
	} 	
}

/*
 * Used in support/HelpDeskForm.jsp, to set proper versions according to the package name.
 */
var packageVersions = new Array();
packageVersions["Web Services Container"] = new Array(
	"2.0.0", "2.1.0", "2.3.0", "2.3.1", "2.3.2", "2.3.3", 
	"3.0.0", "3.0.1", "3.1.0", "3.2.0", "3.3.1", "3.4.0"
);
packageVersions["client"] = new Array(
	"2.0.0", "2.1.0", "2.3.0", "2.3.1", "2.3.2", "2.3.3", 
	"3.0.0", "3.0.1", "3.1.0", "3.2.0", "3.3.1", "3.4.0"
);
packageVersions["Registry (GRIMOIRES)"] = new Array(
	"1.1.2", "1.2.3", "1.7.0"
);
packageVersions["Job Submission (GridSAM)"] = new Array(
	"1.0.0", "2.0.0", "2.0.1"
);
packageVersions["WS-Eventing (FINS)"] = new Array(
	"1.0.5", "1.0.7", "1.0.9", "1.1.0"
);
packageVersions["WS-ReliableMessaging (FIRMS)"] = new Array(
	"1.0.1", "1.1.1"
);
packageVersions["WS-Reliability (FIRMS)"] = new Array(
	"1.0.1", "1.1.1"
);
packageVersions["Jython Environment (GeodiseLab)"] = new Array(
	"1.0.2"
);
packageVersions["Example Application - Cauchy"] = new Array(
	
);
packageVersions["Workflow Editor (BPEL)"] = new Array(
	"2.1.0", "3.0.0", "3.4.0", "3.4.2"
);
packageVersions["Taverna (myGrid)"] = new Array(
	"1.4.1", "1.5.1-M6", "1.5.10", "1.5.12"
);
packageVersions["OGSA-DAI"] = new Array(
	"2.2.0.RC3", "2.2.0"
);

function setPackageVersions() {
	var n = document.getElementById("packageName");
	var v = document.getElementById("packageVersions");
	var name = n.options[n.selectedIndex].text;
	var versions = packageVersions[name];
	
	// remove old, always keep the first one: No Choice.
	var l = v.options.length;
	for(var i = 0; i < l - 1; i++) {
		v.remove(1);
	}
	
	// add new options
	for(var i = 0; i < versions.length; i++) {
		var option = document.createElement("option");
		option.text = versions[i];
		if (YAHOO.env.ua.ie) {
			// IE only
			v.add(option);
		} else {
			// standards compliant
			v.add(option, null); 
		} 
	}
}

