//---------------------------------------------
//              GLOBALS
//---------------------------------------------

//---------------------------------------------
//              UTILTIY FUNCTIONS
//---------------------------------------------

function evtTarget(e) {if (e.target) {var t = e.target;}	else {if (e.srcElement) {var t = e.srcElement;	if (t.nodeType == 3) t = t.parentNode;}} return t;}
function evtKeycode(e) {if (e.keyCode) {var k = e.keyCode;} else {if (e.which) {k = e.which;}} return k;}

//---------------------------------------------
//              MISC FUNCTIONS
//---------------------------------------------

function fixupCheckboxes(cb,all) {
	var frm = cb.form;
	if (all) {
		if (cb.checked) {
			for (var i = 1; i < frm[cb.name].length; i++) {
				frm[cb.name][i].checked = false;
			}
		}
	}
	else {
		if (cb.checked) {
			frm[cb.name][0].checked = false;
		}
		else {
			var hasSelection = false;
			for (var i = 0; i < frm[cb.name].length; i++) {
				if (frm[cb.name][i].checked) {
					hasSelection = true;
					break;
				}
			}
			if (!hasSelection) frm[cb.name][0].checked = true;
		}
	}	
}

function cbSubmit(cb) {
	var frm = cb.form;
	/*
	for (var i=0; i < frm.dsp.length; i++) {
		if (frm.dsp[i].checked) {
			var rad_val = frm.dsp[i].value;
		}
	}
  if (rad_val=='Map') {
		frm.action.value='loadGIS';
	}
	*/
	if (cb.value == "ALL") fixupCheckboxes(cb,true);
	frm.submit();
}

function renderPortalLogin(elm) {
  var newElm = null;
	var newTextNode = null;
	var topElm = null;
	var topElm2 = null;
	topElm = elm;
	newElm = document.createElement("div");
	newElm.style.padding = "0 0 40px 0";
	topElm.appendChild(newElm);
	topElm = newElm;
	newElm = document.createElement("form");
	newElm.setAttribute("action", "https://ssoproviders.tsghealthcare.com/LoginServlet");
	newElm.setAttribute("enctype", "multipart/form-data");
	newElm.setAttribute("method", "post");
	topElm.appendChild(newElm);
	topElm = newElm;
	newElm = document.createElement("input");
	newElm.type = "text";
	newElm.name = "singlepoint-username";
	newElm.id = "username";
	newElm.className = "sidebarinput";
	newElm.value = "username";
	newElm.onfocus = focusLogin;
	topElm.appendChild(newElm);
	newElm = document.createElement("br");
	topElm.appendChild(newElm);
	newElm = document.createElement("input");
	newElm.type = "text";
	newElm.name = "singlepoint-password";
	newElm.id = "password";
	newElm.className = "sidebarinput";
	newElm.value = "password";
	newElm.onfocus = focusLogin;
	topElm.appendChild(newElm);
	newElm = document.createElement("br");
	topElm.appendChild(newElm);
	newElm = document.createElement("div");
	newElm.className = "portalloginlinks";
	topElm.appendChild(newElm);
	topElm2 = newElm;
	newElm = document.createElement("a");
	newElm.href = "https://extranet.tsghealthcare.com/portal/public/resetpassword/";
	newTextNode = document.createTextNode("forgot login?");
	newElm.appendChild(newTextNode);
	topElm2.appendChild(newElm);
	newElm = document.createElement("br");
	topElm2.appendChild(newElm);
	newElm = document.createElement("a");
	newElm.href = "https://providerportal.tsghealthcare.com/register/";
	newTextNode = document.createTextNode("request access");
	newElm.appendChild(newTextNode);
	topElm2.appendChild(newElm);
	newElm = document.createElement("br");
	topElm2.appendChild(newElm);
	newElm = document.createElement("input");
	newElm.type = "submit";
	newElm.className = "button";
	newElm.value = "LOG IN ";
	topElm.appendChild(newElm);
}

//---------------------------------------------
//              DHTML TABSET
//---------------------------------------------

function showTab(tabset, index) {
	index = (index - 1);
	tabset = document.getElementById(tabset);
	var tabs = tabset.childNodes[0];
	var panels = tabset.childNodes[1];
	for (var i=0; i<tabs.childNodes.length; i++) {
		if (i == index) {
			tabs.childNodes[i].className = "selected";
			panels.childNodes[i].className = "selected";
		}
		else {
			tabs.childNodes[i].className = "normal";
			panels.childNodes[i].className = "normal";
		}
		tabs.childNodes[i].blur();
	}	
}

//---------------------------------------------
//              EVENT HANDLERS
//---------------------------------------------

function focusLogin(e) {
	if (!e) var e = window.event; var t = evtTarget(e);
	if (t.tagName != "INPUT") {return false;}
	var elm1 = document.getElementById("username");
	var elm2 = document.getElementById("password");
	if ((elm1.value == "username") && (elm2.value == "password")) {
		elm1.style.color = "black";	
		elm1.value = "";
		if (window.external) {
		  var newElm = document.createElement('input');
			newElm.type = "password";
			newElm.name = elm2.name;
			newElm.id = elm2.id;
			newElm.className = elm2.className;
			newElm.value = "";
			newElm.style.color = "black";
			elm2.parentNode.replaceChild(newElm,elm2);
		}
		else {
			elm2.style.color = "black";	
			elm2.type = "password";
			elm2.value = "";
		}	
		return true;
	}
	else {
		return false;
	}		
}

function focusSearchBox(e) {
	if (!e) var e = window.event; var t = evtTarget(e);
	if (t.tagName != "INPUT") {return false;}
	if (t.value == "enter keyword(s)") {
		t.value = "";
		t.style.color = "black";	
	}
}

function blurSearchBox(e) {
	if (!e) var e = window.event; var t = evtTarget(e);
	if (t.tagName != "INPUT") {return false;}
	if (t.value == "") {
		t.value = "enter keyword(s)";
		t.style.color = "silver";
	}
}

function flipDiv(e) {
	if (!e) var e = window.event; var t = evtTarget(e);
	if (t.tagName != "A") {return false;}
	var i = 0;
	var item = null;
	var sid = t.id;
	var tid = t.id.substring(1);
	var elm2 = document.getElementById(tid);
	var elm1 = elm2.parentNode;
	if (elm1 && elm2) {
		if (elm1.style.display != "block") {
			elm1.style.display = "block";		
		}
		for (i=0; i<elm1.childNodes.length; i++) {
			item = elm1.childNodes[i];
			if (item.nodeType == 1) {
				if (item == elm2) {
					item.style.display = "block";
				}
				else {
					item.style.display = "none";
				}
			}
		}
	}	
	return false;
}

function doOnload() {
	var elm = document.getElementById("stxt");
	if (elm) {
		elm.onfocus = focusSearchBox;	
		elm.onblur = blurSearchBox;	
	}		
	//elm = document.getElementById("portallogin");
	//if (elm) renderPortalLogin(elm);	
	elm = document.getElementById("fliplinksfocus");
	if (elm) {
		for (var i=0; i<elm.childNodes.length; i++) {
			var item1 = elm.childNodes[i];
			if ((item1.nodeType == 1) && (item1.tagName == "UL")) {
				for (var j=0; j<item1.childNodes.length; j++) {
					var item2 = item1.childNodes[j];
					if ((item2.nodeType == 1) && (item2.tagName == "LI")) {
						var item3 = item2.childNodes[0]; //This should be the anchor
						if ((item3) && (item3.tagName == "A")) {
							item3.onmouseover = flipDiv;
						}	
					}	
				}
			}
		}
	}
}

window.onload = doOnload;