var popup = null;
var textbox = null;
// Functions for menu image swapping
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function chartOpen(pUrl,w,h) {
 	winParms = "width="+w+",height="+h+",toolbar=no,scrollbars=no,resizable=no"
    if(popup!=null && !popup.closed) {
	  popup.close();
	}
 	popup = window.open(pUrl,"chart",winParms);
	popup.focus();
}

function errorOpen(pUrl) {
	winParms = "width=480,height=540,toolbar=no,scrollbars=yes,resizable=no"
	popup = window.open(pUrl,"error",winParms);
	popup.focus();
}

function winOpen(pUrl) {
 	winParms = "width=420,height=300,toolbar=no,scrollbars=yes,resizable=no"
 	popup = window.open(pUrl,"help",winParms);
	popup.focus();
}

function printOpen(pUrl) {
 	winParms = "width=720,height=600,toolbar=yes,scrollbars=yes,resizable=yes"
 	popup = window.open(pUrl,"print",winParms);
	popup.focus();
}

function checkScale(val, frame, url, input) {
    if(val <= 10 && val >= 0) {
	  frame.location.href=url;
	} else {
	  alert("Please enter a numeric value between 0 and 10.");
	  textbox = input;
	  setTimeout('textbox.value = ""', 5);
	  setTimeout('textbox.focus()', 5);
	}
}

function checkPercent(val, frame, url, input) {
    if(val <= 100 && val >= 0) {
	  frame.location.href=url;
	} else {
	  alert("Please enter a percentage value between 0 and 100.");
	  textbox = input;
	  setTimeout('textbox.value = ""', 5);
	  setTimeout('textbox.focus()', 5);
	}
}

function updateTotal(doc, varname, group) {
	var total;
	
    switch(group) {
		case 'EG':
		  total = Number(doc.getElementById(varname+'EXC').value.replace(/,/g,""))+Number(doc.getElementById(varname+'MNG').value.replace(/,/g,""))+Number(doc.getElementById(varname+'SUP').value.replace(/,/g,""))+Number(doc.getElementById(varname+'PRD').value.replace(/,/g,""))+Number(doc.getElementById(varname+'ADM').value.replace(/,/g,""))+Number(doc.getElementById(varname+'SRV').value.replace(/,/g,""))+Number(doc.getElementById(varname+'SLS').value.replace(/,/g,""))+Number(doc.getElementById(varname+'TEC').value.replace(/,/g,""))+Number(doc.getElementById(varname+'OTH').value.replace(/,/g,""));
		  break;
		case 'TS':
		  total = Number(doc.getElementById(varname+'FML').value.replace(/,/g,""))+Number(doc.getElementById(varname+'WRK').value.replace(/,/g,""))+Number(doc.getElementById(varname+'NON').value.replace(/,/g,""));
		  break;
		case 'SA':
		  total = Number(doc.getElementById(varname+'ADM').value.replace(/,/g,""))+Number(doc.getElementById(varname+'ANL').value.replace(/,/g,""))+Number(doc.getElementById(varname+'TSK').value.replace(/,/g,""))+Number(doc.getElementById(varname+'DSN').value.replace(/,/g,""))+Number(doc.getElementById(varname+'DVL').value.replace(/,/g,""))+Number(doc.getElementById(varname+'MNT').value.replace(/,/g,""))+Number(doc.getElementById(varname+'DLV').value.replace(/,/g,""))+Number(doc.getElementById(varname+'MSR').value.replace(/,/g,""));
		  break;
		case 'CA':
		  total = Number(doc.getElementById(varname+'EXD').value.replace(/,/g,""))+Number(doc.getElementById(varname+'MNG').value.replace(/,/g,""))+Number(doc.getElementById(varname+'SLS').value.replace(/,/g,""))+Number(doc.getElementById(varname+'SRV').value.replace(/,/g,""))+Number(doc.getElementById(varname+'CMP').value.replace(/,/g,""))+Number(doc.getElementById(varname+'PRC').value.replace(/,/g,""))+Number(doc.getElementById(varname+'TEC').value.replace(/,/g,""))+Number(doc.getElementById(varname+'COM').value.replace(/,/g,""))+Number(doc.getElementById(varname+'ORN').value.replace(/,/g,""))+Number(doc.getElementById(varname+'SKL').value.replace(/,/g,""))+Number(doc.getElementById(varname+'SPC').value.replace(/,/g,""))+Number(doc.getElementById(varname+'KNW').value.replace(/,/g,""))+Number(doc.getElementById(varname+'OTH').value.replace(/,/g,""));
		  break;
		case 'DM':
		  total = Number(doc.getElementById(varname+'TCR').value.replace(/,/g,""))+Number(doc.getElementById(varname+'TOL').value.replace(/,/g,""))+Number(doc.getElementById(varname+'TRM').value.replace(/,/g,""))+Number(doc.getElementById(varname+'IOL').value.replace(/,/g,""))+Number(doc.getElementById(varname+'ICM').value.replace(/,/g,""))+Number(doc.getElementById(varname+'IMT').value.replace(/,/g,""))+Number(doc.getElementById(varname+'IAV').value.replace(/,/g,""))+Number(doc.getElementById(varname+'IPR').value.replace(/,/g,""))+Number(doc.getElementById(varname+'OTH').value.replace(/,/g,""));
		  break;
	}
	total = Math.round(total*100)/100;
	doc.getElementById(varname+'TOT').innerHTML = '<strong>'+total+'</strong>';
	switch(varname) {
		case 'Workforce_EG':
		  if(total > Number(doc.getElementById('Workforce_Size').value.replace(/,/g,"")))
		    alert('Your current total for Workforce Composition ('+total+') is greater than your entry for Workforce Size ('+doc.getElementById('Workforce_Size').value+').');
		  break;
		case 'Pct_Direct_Exp_TS':
		  if(total > 100)
		    alert('Your current total for Percentage of Direct Cost for Learning by Type of Solution ('+total+') is greater than 100 percent.');
		  break;
		case 'Pct_Lrng_Exp_EG':
		  if(total > 100)
		    alert('Your current total for Expenditure by Employee Groups ('+total+') is greater than 100 percent.');
		  break;
		case 'Num_Lrng_Staff_SA':
		  if(total > Number(doc.getElementById('Num_Lrng_Staff').value.replace(/,/g,"")))
		    alert('Your current total for Learning Staff Allocation by Activity ('+total+') is greater than your entry for Learning Staff Size ('+doc.getElementById('Num_Lrng_Staff').value+').');
	      break;
		case 'Pct_Lrng_Staff_Time_SA':
		  if(total > 100)
		    alert('Your current total for Learning Staff Time Allocation by Activity ('+total+') is greater than 100 percent.');
		  break;
		case 'Pct_Lrng_Staff_Time_TS':
		  if(total > 100)
		    alert('Your current total for Learning Staff Time Allocation by Type of Solution ('+total+') is greater than 100 percent.');
	      break;
		case 'Frml_Hrs_CA':
		  if(total > 100)
		    alert('Your current total for Formal Hours by Content Area ('+total+') is greater than 100 percent.');
	      break;
	    case 'Frml_Hrs_New_CA':
		  if(total > 100)
		    alert('Your current total for New Formal Hours by Content Area ('+total+') is greater than 100 percent.');
		  break;
		case 'Frml_Hrs_DM':
		  if(total > 100)
		    alert('Your current total for Formal Hours by Delivery Method ('+total+') is greater than 100 percent.');
		  break;
		case 'Frml_Hrs_Used_EG':
		  if(total > Number(doc.getElementById('Frml_Hrs_Used').value.replace(/,/g,"")))
		    alert('Your current total for Formal Hours Used by Employee Group ('+total+') is greater than your entry for Formal Hours Used ('+doc.getElementById('Frml_Hrs_Used').value+').');
		  break;
		case 'Frml_Hrs_Used_DM':
		  if(total > 100)
		    alert('Your current total for Formal Hours Used by Delivery Method ('+total+') is greater than 100 percent.');
		  break;
		case 'Knwl_Hrs_Time_EG':
		  if(total > Number(doc.getElementById('Knwl_Hrs_Time').value.replace(/,/g,"")))
		    alert('Your current total for Knowledge Repository Time by Employee Group ('+total+') is greater than your entry for Knowledge Repository Time ('+doc.getElementById('Knwl_Hrs_Time').value+').');
		  break;
	}
}

function checkDiag(input, val) {
    if((val != '') && (isNaN(parseFloat(val)))) {
      alert("Please enter a numeric value.");
	  textbox = input;
	  setTimeout('textbox.value = ""', 5);
	  setTimeout('textbox.focus()', 5);
	  return false;
	}
	return true;
}
