var req;
var targetlb;
var targettb;
var targetform;
var targetContainer;
function isblank(s) {
   for (var i=0; i<s.length; i++) {
        var c = s.charAt(i);
        if ((c != ' ') && (c !='\n') && (c != '\t')) return false;
        }
   return true; 
}
function think4(millis)
{
	var date = new Date();
	var curDate = null;
	do { curDate = new Date(); }
		while(curDate-date < millis);
} 
function validate_signin_form(the_form) {
    err_flag = 'n';
    err_msg = '';
    if ( (the_form.user_name_p.value == null) || (the_form.user_name_p.value == " ") || isblank(the_form.user_name_p.value) ) {
		err_msg = err_msg + 'Please provide your user name.\n'; err_flag ='Y';}
    if ( (the_form.password_p.value == null) || (the_form.password_p.value == " ") ||  isblank(the_form.password_p.value) ) {
		err_msg = err_msg + 'Please provide your password.\n'; err_flag = 'Y';}
    if (err_flag == 'Y') {
         alert('The Following Errors were Found: \n\n' + err_msg);
      } else {         
	the_form.submit();	
      }
}
function crumbValue (inValue) {
    document.getElementById('breadcrumb').innerHTML = inValue;
}
function showID(itemId) {
   document.getElementById(itemId).style.display = tr_display;
}
function hideID (itemId) {
   document.getElementById(itemId).style.display = 'none';
}
function submitForm() {
	updateRTEs();
	return true;
}
function processReqChange () {
    if ((req.readyState == 4) && (req.status == 200)) {
		response  = req.responseXML.documentElement;
		options = response.getElementsByTagName("optiontext");
		targetlb.length=0;
		if (options.length > 0) {
			targetlb.options[0]  = new Option("Make A Selection","");	    
			for (i=0; i < options.length; i++) { 
				opttext   = response.getElementsByTagName("optiontext")[i].firstChild.data;
				optvalue    = response.getElementsByTagName("optionvalue")[i].firstChild.data;
				targetlb.options[i+1]  = new Option(opttext,optvalue );
			} 
		} else {
			    targetlb.options[0]  = new Option("No Values","");
		}
        document.getElementById("divProgress").style.display = "none";
    }
    else {
	document.getElementById("divProgress").style.display = "block";
    }
}
function processReq4Value () {
    if ((req.readyState == 4) && (req.status == 200)) {
		response  = req.responseXML.documentElement;
		options = response.getElementsByTagName("optiontext");
		targettb.value='';
		targettb2.value='';
		if (options.length > 0) {	    
			for (i=0; i < options.length; i++) { 
				opttext   = response.getElementsByTagName("optiontext")[i].firstChild.data;
				optvalue    = response.getElementsByTagName("optionvalue")[i].firstChild.data;
				targettb.value  = optvalue;
				targettb2.value  = opttext;
			} 
		} else {
			    targettb.value  = "No Values";
		}
        document.getElementById("divProgress").style.display = "none";
    }
    else {
	document.getElementById("divProgress").style.display = "block";
    }
}
function processUpdate () {
    if ((req.readyState == 4) && (req.status == 200)) {
		response  = req.responseXML.documentElement;
		options = response.getElementsByTagName("optiontext");
		if (options.length > 0) {	    
			for (i=0; i < options.length; i++) { 
				opttext   = response.getElementsByTagName("optiontext")[i].firstChild.data;
				optvalue    = response.getElementsByTagName("optionvalue")[i].firstChild.data;
			} 
		}
        document.getElementById("divProgress").style.display = "none";
	if (optvalue == 0) {
	    document.getElementById("divProgressOK").style.display = "block";
	} else {
            document.getElementById("divProgressFail").style.display = "block";
	    alert('Update Failed: ' + opttext);
	}
	
	targetform.submit();
    }
    else {
	document.getElementById("divProgress").style.display = "block";
    }
}
function processUpdateNS () {
    if ((req.readyState == 4) && (req.status == 200)) {
		response  = req.responseXML.documentElement;
		options = response.getElementsByTagName("optiontext");
		if (options.length > 0) {	    
			for (i=0; i < options.length; i++) { 
				opttext   = response.getElementsByTagName("optiontext")[i].firstChild.data;
				optvalue    = response.getElementsByTagName("optionvalue")[i].firstChild.data;
			} 
		}
        document.getElementById("divProgress").style.display = "none";
	if (optvalue == 0) {
	    document.getElementById("divProgressOK").style.display = "block";
	} else {
            document.getElementById("divProgressFail").style.display = "block";
	    alert('Update Failed: ' + opttext);
	}
    }
    else {
	document.getElementById("divProgress").style.display = "block";
    }
}
function getXMLHTTP(){
  var A=null;
  try{
    A=new ActiveXObject("Msxml2.XMLHTTP")
  }catch(e){
    try{
      A=new ActiveXObject("Microsoft.XMLHTTP")
    } catch(oc){
      A=null
    }
  }
  if(!A && typeof XMLHttpRequest != "undefined") {
    A=new XMLHttpRequest()
  }
  return A
}
function loadXMLDoc(url) {
    req=getXMLHTTP();
	if(req){
        req.onreadystatechange = processReqChange;
        req.open("GET", url, true);
        req.send(null);
	}
}
function loadXMLValue(url) {
    req=getXMLHTTP();
	if(req){
        req.onreadystatechange = processReq4Value;
        req.open("GET", url, true);
        req.send(null);
	}
}
function updateField(tablen,pk,fieldn,fvalue) {
    req=getXMLHTTP();
    url= "train_xml.do_update?useraction=" + tablen + "&p_pk_id=" + pk + "&p_field_name=" + fieldn + "&p_field_value=" + escape(fvalue);
	if(req){
        req.onreadystatechange = processUpdate;
        req.open("GET", url , true);
        req.send(null);
	}
}
function addToList(dn,dv) {
    req=getXMLHTTP();
    url= "train_xml.add_lov?p_domain_name=" + dn + "&p_display_value=" + escape(dv);
	if(req){
        req.onreadystatechange = processUpdateNS;
        req.open("GET", url , true);
        req.send(null);
	}
}
function refreshList(dn,lbToChange) {
	targetlb = lbToChange;
	think4(1250);
	loadXMLDoc("train_xml.refresh_lov?p_domain_name=" + dn );
}
function setSelected(lb,dv) {
	alert('Add Was Successful');
	for (i=0; i < lb.length; i++) {
	    if (lb[i].text == dv ) {
		lb.selectedIndex = i;
	    }
	} 
}
function updateMVField(tablen,pk,fieldn,setn) {
    var fvalue = setn + ',';  
    for (i=0; i < fieldn.length; i++) { 
	if (fieldn[i].checked) {
		fvalue = fvalue + fieldn[i].value + ',';
	}
    }
    url= "train_xml.do_update?useraction=" + tablen + "&p_pk_id=" + pk + "&p_field_name=" + "dummy" + "&p_field_value=" + escape(fvalue);
    req=getXMLHTTP();
    if(req){
        req.onreadystatechange = processUpdate;
        req.open("GET", url , true);
        req.send(null);
	}
}
function getMoreHtml () {
    if ((req.readyState == 4) && (req.status == 200)) {
        document.getElementById(targetContainer).innerHTML = req.responseText;
	document.getElementById("divProgress").style.display = 'none';
    }
    else {
	document.getElementById("divProgress").style.display = 'block';
    }
}
function loadNewContent(url) {
    req=getXMLHTTP();
	if(req){
        req.onreadystatechange = getMoreHtml;
        req.open("GET", url, true);
        req.send(null);
	}
}
function loadInto(url,containerID) {
	targetContainer = containerID;
	loadNewContent(url );
} 
function showMore(varA1, varB1){
var123 = ('varXYZ' + (varA1));
varABC = ('varP' + (varA1));
if( document.getElementById ) {
if( document.getElementById(var123).style.display ) {
if( varB1 != 0 ) {
document.getElementById(var123).style.display = "block";
document.getElementById(varABC).style.display = "none";
} else { document.getElementById(var123).style.display = "none"; 
document.getElementById(varABC).style.display = "block"; }
} else { location.href = varB1;
return true; }
} else { location.href = varB1;
return true; }
}