var flagVar = 'false';
var GlobalTabString;
var nameLabelstr;
var isPopup = false;
var isMultiSubAllowed = true;
var pathPrefix = "../../";
document.onkeyup    = detectKeyup;
var firstErrorField="";
var info_arr         = new Array();
var infoCtx_arr      = new Array();
var error_arr        = new Array();
var warn_arr         = new Array();
var warnCtx_arr      = new Array();
var fatal_arr        = new Array();
var serverErr_arr    = new Array();
var serverErrCtx_arr = new Array();
var windowObject     = new Object();
function showErrors()
{
  hideBlink();
  var str ="<html>";
  str+="<head>";
  str+="<META http-equiv='Content-Type' content='text/html; charset=UTF-8'>";
  str+="<link href='" + jsWebPath + "css/pofstylesheet.css' type='text/css' rel='stylesheet'>";
  str+="<script language='JavaScript' src='" + jsWebPath + "js/Joa.js'></script>";
  str+="<script language='JavaScript' src='" + jsWebPath + "js/ErrorMsgs.js'></script>";
  str+="<title>";
  str+="Information/Errors/Warning window";
  str+="</title>";
  str+="</head>";
  str+="<br>";
  str+="<body>";
  str+="<form name='dummy' action='dummyAction'>"   // if fatal error has occurred then show fatal error pop-up
  if ( fatal_arr.length > 0 )
  {
    str+="<table class='Messages' align=center cellspacing=1 cellpadding=0>";
    str+="  <tr  width='100%' class='RowDataHdr2'>";
    str+="    <td  width='100%' class='RowDataHdr2'>";
    str+="      <table class='RowDataHdr2' width=100%>";
    str+="        <tr >";
    str+="          <td width=10%><img src='" + jsWebPath + "images/erroricon_pagetitle.gif'</td>";
    str+="          <td>Fatal Errors</td>";
    str+="        </tr>";
    str+="      </table>";
    str+="    </td>";
    str+="  </tr>";
    str+="  <tr class='RowDataAlt' bgcolor='#FF0000'>";
    str+="    <td class='Field'><font size=2><B>Following fatal errors have occured. Please contact your system administrator:</font></td>";
    str+="  </tr>";
    for(var i = 0; i < fatal_arr.length ; i++)
    {
      str+="  <tr class='RowData'>";
      str+="    <td>";
      str+= fatal_arr[i] ;
      str+="    </td>";
      str+="  </tr>";
    }
    str+="</table>";
    str+="<p>";
  }     // shows error if no fatal errors have occurred
  if ( error_arr.length > 0 )
  {
    str+="<table class='Messages' align=center cellspacing=1 cellpadding=0>";
    str+="  <tr  width='100%' class='RowDataHdr2'>";
    str+="    <td width='100%' class='RowDataHdr2'>";
    str+="      <table class='RowDataHdr2' width=100%>";
    str+="        <tr >";
    str+="          <td width=10%><img src='" + jsWebPath + "images/erroricon_pagetitle.gif'</td>";
    str+="          <td>Errors</td>";
    str+="        </tr>";
    str+="      </table>";
    str+="    </td>";
    str+="  </tr>";
    str+="  <tr class='RowDataAlt' bgcolor='#FF0000'>";
    str+="    <td class='Field'><font size=2><B>Following errors have occured while submitting the page:</font></td>";
    str+="  </tr>";
    for(var i = 0; i < error_arr.length ; i++)
    {
      str+="  <tr class='RowData'>";
      str+="    <td>";
      str+=error_arr[i];
      str+="    </td>";
      str+="  </tr>";
    }
    str+="</table>";
    str+="<p>";
  }
  if ( warn_arr.length > 0 )  // shows warnings
  {
    str+="<table class='Messages' align=center cellspacing=1 cellpadding=0>";
    str+="  <tr  width='100%' class='RowDataHdr2'>";
    str+="    <td  width='100%' class='RowDataHdr2'>";
    str+="      <table class='RowDataHdr2'width=100%>";
    str+="        <tr >";
    str+="          <td width=10%><img src='" + jsWebPath + "images/warningicon_pagetitle.gif'</td>";
    str+="          <td>Warnings</td>";
    str+="        </tr>";
    str+="      </table>";
    str+="    </td>";
    str+="  </tr>";
    str+="  <tr class='RowDataAlt' bgcolor='#FF0000'>";
    str+="    <td class='Field'><font size=2><B>Following warnings have occured while submitting the page:</font></td>";
    str+="  </tr>";
    for(var i = 0; i < warn_arr.length ; i++)
    {
      str+="  <tr class='RowData'>";
      str+="    <td>";
      str+=warn_arr[i];
      str+="    </td>";
      str+="  </tr>";
    }
    str+="</table>";
    str+="<p>";
  }   // shows information
  if ( info_arr.length > 0 )
  {
    str+="<table class='Messages' align=center cellspacing=1 cellpadding=0>";
    str+="  <tr  width='100%' class='RowDataHdr2'>";
    str+="    <td  width='100%' class='RowDataHdr2'>";
    str+="      <table class='RowDataHdr2'width=100%>";
    str+="        <tr>";
    str+="          <td width=10% ><img src='" + jsWebPath + "images/infoicon_pagetitle.gif'</td>";
    str+="          <td>Information</td>";
    str+="        </tr>";
    str+="      </table>";
    str+="    </td>";
    str+="  </tr>";
    str+="  <tr class='RowDataAlt' bgcolor='#FF0000'>";
    str+="    <td class='Field'><font size=2><B>Some information below:</font></td>";
    str+="  </tr>";
    for(var i = 0; i < info_arr.length ; i++)
    {
      str+="  <tr class='RowData'>";
      str+="    <td>";
      str+=info_arr[i];
      str+="    </td>";
      str+="  </tr>";
    }
    str+="</table>";
    str+="<p>";
  }
  str+="<table cellpadding='0' cellspacing='0' border='0' align='center'>";
  str+="  <tr><td class='PageButtonsBefore'></td></tr>";
  str+="  <tr> ";     // displays button bar for fatal and error pop-up
  if ( fatal_arr.length != 0 || error_arr.length != 0 )
  {
    str+="    <td class='PageBtnSpacing'></td>";
    str+="    <td><img alt='' src='" + jsWebPath + "images/bigbtn_left.gif' border='0'></td>";
    str+="    <td nowrap='nowrap' background='" + jsWebPath + "images/bigbtn_body.gif' class='LargeBtnText' >";
    str+="      <a class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"cancelError\", \"false\")'>";
    str+="        Close";
    str+="      </a>";
    str+="    </td>";
    str+="    <td nowrap='nowrap'><img alt='' src='" + jsWebPath + "images/bigbtn_right.gif' border='0'></td>";
  }
  else if ( warn_arr.length != 0 )    // displays button bar warnings
  {
    str+="    <td class='PageBtnSpacing'></td>";
    str+="    <td><img alt='' src='" + jsWebPath + "images/bigbtn_left.gif' border='0'></td>";
    str+="    <td nowrap='nowrap' background='" + jsWebPath + "images/bigbtn_body.gif' class='LargeBtnText'>";
    str+="      <a class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"continueError\", \"false\")'>";
    str+="       Continue";
    str+="      </a>";
    str+="    </td>";
    str+="    <td nowrap='nowrap'><img alt='' src='" + jsWebPath + "images/bigbtn_right.gif' border='0'></td>";
    str+="    <td class='PageBtnSpacing'></td>";
    str+="    <td><img alt='' src='" + jsWebPath + "images/bigbtn_left.gif' border='0'></td>";
    str+="    <td nowrap='nowrap' background='" + jsWebPath + "images/bigbtn_body.gif' class='LargeBtnText'>";
    str+="      <a class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"cancelError\", \"false\")'>";
    str+="        Close";
    str+="      </a>";
    str+="    </td>";
    str+="    <td nowrap='nowrap'><img alt='' src='" + jsWebPath + "images/bigbtn_right.gif' border='0'></td>";
  }
  else if ( info_arr.length != 0 )  // displays button bar for information
  {
    str+="    <td class='PageBtnSpacing'></td>";
    str+="    <td><img alt='' src='" + jsWebPath + "images/bigbtn_left.gif' border='0'></td>";
    str+="    <td nowrap='nowrap' background='" + jsWebPath + "images/bigbtn_body.gif' class='LargeBtnText'>";
    str+="      <a class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"cancelError\", \"false\")'>";
    str+="        Close";
    str+="      </a>";
    str+="    </td>";
    str+="    <td nowrap='nowrap'><img alt='' src='" + jsWebPath + "images/bigbtn_right.gif' border='0'></td>";
  }
  str+="  </tr>";
  str+="</table>";
  str+="</form>"
  str+="</body>";
  str+="</html>";
  hideBlink();
  flagVar='false';
  showModalWin("",475,200,"yes","yes","no",str); // call show modal dialog for modal window
  if(firstErrorField!="")
  {
    var errorObj = document.getElementById(firstErrorField);
	firstErrorField="";
    errorObj.focus();
  }
  else
  {
    focusOnFirstElement(); // after closing the pop-up
  }
}
function modalWin(url, width, height)
{
  if (!windowObject.win || (windowObject.win && windowObject.win.closed))
  {
    windowObject.width = width;
    windowObject.height = height;
    windowObject.name = (new Date()).getSeconds().toString();
    windowObject.left = (screen.width - windowObject.width) / 2;
    windowObject.top = (screen.height - windowObject.height) / 2;
    var windowAttributes = 'left=' + windowObject.left + ',top=' + windowObject.top + ',resizable=yes,width='+
                            windowObject.width +  ',height=' + windowObject.height +',scrollbars=yes';
    windowObject.url = url;
    windowObject.win=window.open(windowObject.url, windowObject.name, windowAttributes);
    return windowObject.win;
  }
  else
  {
    return windowObject.win;
  }
}
function showModalWin(url, width, height,resizable,scroll,status,arguments)
{
  var param = "dialogHeight:"+height+"px;dialogWidth:"+width+"px;center:yes;resizable:"+resizable+";status:"+status+";scroll:"+scroll+";help:no";
  xshowModalDialog("/"+contextRoot+"/joa/html/dummy.htm",arguments,param);
}

//Changed by MCACross
dFeatures = 'dialogHeight: 450px; dialogWidth: 1049px; dialogTop: 646px; dialogLeft: 4px; edge: Raised; center: Yes; help: Yes; resizable: Yes; status: Yes;';//default features 

modalWindow = ""; 
function xshowModalDialog( sURL, vArguments, sFeatures ) 
{ 
if (sURL==null||sURL=='') 
{ 
alert ("Invalid URL input."); 
return false; 
} 
if (vArguments==null||vArguments=='') 
{ 
vArguments=''; 
} 
if (sFeatures==null||sFeatures=='') 
{ 
sFeatures=dFeatures; 
} 
if (window.navigator.appVersion.indexOf("MSIE")!=-1) 
{ 
window.showModalDialog ( sURL, vArguments, sFeatures ); 
return false; 
} 
sFeatures = sFeatures.replace(/ /gi,''); 
aFeatures = sFeatures.split(";"); 
sWinFeat = "directories=0,menubar=0,titlebar=0,toolbar=0,"; 
for ( x in aFeatures ) 
{ 
aTmp = aFeatures[x].split(":"); 
sKey = aTmp[0].toLowerCase(); 
sVal = aTmp[1]; 
switch (sKey) 
{ 
case "dialogheight": 
sWinFeat += "height="+sVal+","; 
pHeight = sVal; 
break; 
case "dialogwidth": 
sWinFeat += "width="+sVal+","; 
pWidth = sVal; 
break; 
case "dialogtop": 
sWinFeat += "screenY="+sVal+","; 
break; 
case "dialogleft": 
sWinFeat += "screenX="+sVal+","; 
break; 
case "resizable": 
sWinFeat += "resizable="+sVal+","; 
break; 
case "status": 
sWinFeat += "status="+sVal+","; 
break; 
case "center": 
if ( sVal.toLowerCase() == "yes" ) 
{ 
sWinFeat += "screenY="+((screen.availHeight-pHeight)/2)+","; 
sWinFeat += "screenX="+((screen.availWidth-pWidth)/2)+","; 
} 
break; 
} 
} 
modalWindow=window.open(String(sURL),"",sWinFeat); 
if (vArguments!=null&&vArguments!='') 
{ 
	modalWindow.dialogArguments=vArguments; 
} 
} 

function checkFocus() 
{ 
if (window.navigator.appVersion.indexOf("MSIE")==-1) 
{ 
if (modalWindow!=null && !modalWindow.closed) 
{ 
self.blur(); 
modalWindow.focus(); 
} 
} 
}


function push()
{
  var sub = this.length;
  for (var i = 0; i <push.arguments.length; i++)
  {
    this[sub] = push.arguments[i];
    sub++;
  }
}
function setErrCtx(info)
{
  serverErrCtx_arr.push(info);
}
function setServerErr(info)
{
  serverErr_arr.push(info);
}
function setInfo(info)
{
  info_arr.push(info);
}
function setInfoCtx(infoCtx)
{
  infoCtx_arr.push(infoCtx);
}
function setError(value)
{
    error_arr.push(value);
}
function setWarn(warn)
{
  warn_arr.push(warn);
}
function setWarnCtx(warnCtx)
{
  warnCtx_arr.push(warnCtx);
}
function setFatal(fatal)
{
  fatal_arr.push(fatal);
}
function pre_Find()
{
  return true;
}
function after_close()
{
	return true;
}
function pageLevelSubmit(anchorObj, method, validate,taskID)
{
  startBlink(); // to start the processing blinker
  stripMethod();
  if(taskID != null)
     addTaskId(taskID);
  
  if(validate=='true')      // Initialise all the array length to zero
  {
    info_arr.length=0;
    error_arr.length=0;
    infoCtx_arr.length=0;
    warnCtx_arr.length=0;
    fatal_arr.length=0;
    serverErr_arr.length=0;
    serverErrCtx_arr.length=0;
    warn_arr.length=0;     //      Invoke any validations re
    if(!eval("pre_"+method+"()"))
    {
      hideBlink();
      return;
    }
  }
  theForm = document.forms[0];
  if(method == 'closeError')
  {
	window.opener.focus();
    ipElements = window.opener.document.getElementsByTagName("INPUT");
    for(cunt = 0; cunt < ipElements.length; cunt++)
    {
	    ipObj = ipElements[cunt];
	    if( ipObj.type != "hidden")
	    break;
	}
    if ( ( ipObj.type != "radio") && ( ipObj.type != "checkbox"))
    {
    	window.opener.focusOnFirstElement();
    }
    window.self.close();
	window.opener.after_close();
  }
  else if(method == 'cancelError')
  {
    window.self.close();
  }
  else if (method == 'continueError')
  {
    openerObj = window.opener;
    param     = openerObj.location;
    theForm = openerObj.document.forms[0];
    theForm.action = param + "&continueError=Y";
    if(!isMultiSubAllowed)
    {
       disableLinks(theForm);
    }
    theForm.submit();
    openerObj.focus();
    self.close();
  }
  if(showErrorOnSubmit(theForm))
    {
      stripMethod();
      before_submit();
	  theForm.method.value=method;
      if(isPopup)
      {
        theForm.action+="&popup=true";
        hideBlink();
        isPopup=false;
      }
      if(!isMultiSubAllowed)
      {
        disableLinks(theForm);
      }
      if(dateFormatFlip){
      	replaceDates();
      }
      theForm.submit();
      if(dateFormatFlip){
      	replaceDatesReverse()
      }
    }
} // end of function pageLevelSumbit()



function replaceDates(){
	var inputs=document.getElementsByTagName("INPUT");
	for(var i=0;i<inputs.length;i++){
		var value=inputs[i].value;
		if((/\d\d\/\d\d\/\d\d\d\d/).test(value)){
			value=value.replace("/","-");
			value=value.replace("/","-");
			inputs[i].value=value;
		}
	}
	inputs=document.getElementsByTagName("HIDDEN");
	for(var j=0;j<inputs.length;j++){
		var value=inputs[j].value;
		if((/\d\d\/\d\d\/\d\d\d\d/).test(value)){
			value=value.replace("/","-");
			value=value.replace("/","-");
			inputs[j].value=value;
		}
	}
}
 
function replaceDatesReverse(){
	var inputs=document.getElementsByTagName("INPUT");
	for(var i=0;i<inputs.length;i++){
		var value=inputs[i].value;
		if((/\d\d\-\d\d\-\d\d\d\d/).test(value)){
			value=value.replace("-","/");
			value=value.replace("-","/");
			inputs[i].value=value;
		}
	}
	inputs=document.getElementsByTagName("HIDDEN");
	for(var j=0;j<inputs.length;j++){
		var value=inputs[j].value;
		if((/\d\d\/\d\d\/\d\d\d\d/).test(value)){
			value=value.replace("-","/");
			value=value.replace("-","/");
			inputs[j].value=value;
		}
	}
}

var SUCCESS = 1;
var FAILURE = 0;
function checkDataType( data, type )
{
  if(!data)
  {
    return;
  }
  var status = SUCCESS;
  var n_dataStr  = "+-0123456789.";
  var dt_dataStr = "0123456789\/";
  var char_dataStr = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ: ";
  var dataTypeStr;
  var thisChar;
  var i;
  if (data == "")
    return SUCCESS;
  if (type == "N")
  {
    dataTypeStr = n_dataStr;
  }
  else if(type == "D")
  {
    dataTypeStr = dt_dataStr;
  }
  else if(type == "C")
  {
    dataTypeStr = char_dataStr;
  }
  for ( i=0; i<data.length; i++)
  {
    thisChar = data.substring( i, i+1 );
    if (dataTypeStr.indexOf( thisChar ) == -1)
    {
      status = FAILURE;
      break;
    }
  }
  return status;
}
function stripMethod()
{
  if(document.forms[0])
  {
    var action=document.forms[0].action;
    var index = action.indexOf("?");
    if ( index != -1 )
    {
      document.forms[0].action = action.substring(0, index);
    }
  }
}
function trim( s )
{
  if(!s)
      return;
  if(s.length == 0)
	{
	  return s;
  } var i = 0, j = s.length - 1;
  for(; i <= j; i++)
  {
    var c = s.charAt(i);
    if(c != ' ' & c != '\n' & c != '\t')
    {
      break;
    }
  }       // If i passed j, we have an empty string
  if(i > j)
  {
    return "";
  }
  for(; j > i; j--)
  {
    var c = s.charAt(j);
    if(c != ' ' & c != '\n' & c != '\t')
    {
      break;
    }
  }
  if (i > 0 || j < s.length - 1)
  {
    return s.substring(i, j+1 );
  }
  else
  {
    return s;
  }
} /* trim end */
function joaRemoveLeadingSpaces(objCurrent)
{
  while(objCurrent.value.charAt(0)==' ')
  {
    objCurrent.value=objCurrent.value.substring(1,objCurrent.value.length);
  }
  return objCurrent.value;
}
function joaRemoveLeadingNewLineSpaces(objCurrent)
{
  while(objCurrent.value.length >0 && objCurrent.value.substring(0,2)=="\r\n")
  {
    objCurrent.value=objCurrent.value.substring(2,objCurrent.value.length);
      while(objCurrent.value.charAt(0)==' ')
  		{
   			 objCurrent.value=objCurrent.value.substring(1,objCurrent.value.length);
  		}
   }
  return objCurrent.value;
}
function removeTrailingSpaces(objCurrent)
{
  while(objCurrent.value.charAt(objCurrent.value.length-1)==' ')
  {
    objCurrent.value=objCurrent.value.substring(0,objCurrent.value.length-1);
  }
  return objCurrent.value;
}
function toUp(objCurrent)
{
  objCurrent.value = objCurrent.value.toUpperCase();
}
function toLow(objCurrent)
 {
   if(flagVar=='false')
   {
    return objCurrent.value.toLowerCase();
   }
 }
function enableDisableElement()
{
  if(flagVar=='false')
  {
    var funcArgs=enableDisableElement.arguments;
    for(var i=0; i<funcArgs.length; i=i+2)
    {
      document.getElementById(funcArgs[i]).disabled = funcArgs[i+1];
    }
  }
}
/*function getValues(objselect)
{
  var index = objselect.selectedIndex;
  var val   = objselect.options[index].value;
  window.frames[0].document.forms[0].stFieldVal.value=val;
  window.frames[0].document.forms[0].action+="?method=getDropDnVal";
  window.frames[0].document.forms[0].submit();
}
function disableElement()
{
 if(flagVar=='false')
 {
  var funcArgs=disableElement.arguments;
  if(arguments[0]=="select")
   {
 	  var index		=arguments[2].selectedIndex; // get the selected index
	  var tempVal	=arguments[2].options[index].value; // ge tits value
	  if(tempVal==arguments[1]) // if value is equal to that specified then go in the if clause
	  {
      for(var i=3; i<funcArgs.length; i++)
      {
        arguments[i].disabled=true; // disable the field
      }
    }
    else
    {
      for(var i=3; i<funcArgs.length; i++)
      {
        arguments[i].disabled=false; // enable the field
      }
    }
   }
  else if(arguments[0]=="text")
  {
   var tempVal = arguments[2].value;
	  if(tempVal==arguments[1])
	  {
      for(var i=3; i<funcArgs.length; i++)
      {
        arguments[i].disabled=true;
      }
    }
    else
    {
      for(var i=3; i<funcArgs.length; i++)
      {
        arguments[i].disabled=false;
      }
    }
  }
 }
}
function toggleCheckbox()
{
 var tempVal = arguments.length;
 if(arguments[0].checked)
 {
   for(var i=1;i<tempVal;i++)
   {
      arguments[i].disabled=1;
   }
 }
 if(!arguments[0].checked)
 {
  for(var i=1;i<tempVal;i++)
   {
      arguments[i].disabled=0;
   }
 }
}
function getToken(dataString,delimChar,tokenNo)
{
	var fieldValue;
	var startPos,endPos;
	startPos = 0;
	for (var i=1; i<tokenNo; i++)
	{
		startPos = dataString.indexOf(delimChar,startPos);
		if(startPos == -1)
		{
			return('');
		}
		startPos = startPos +1;
	}
	endPos = dataString.indexOf(delimChar,startPos);
	if (endPos == -1)
	{
		endPos = dataString.length;
	}
	fieldValue = dataString.substring(startPos,endPos);
	return fieldValue;
}*/
function showErrorOnSubmit(formObj)
{
	 
  flagVar='true'; // enable all onblur event validations
  var tableObj;
  var tableId;
  error_arr    = new Array();
  mandatoryFieldCheck(formObj); // check if any mandatory field is left blank or not.
    scriptTagFlag=1;

  if(flagVar=='true')
  { for(blockCounter=1;;blockCounter++)
    {
      tableId  = "DataBlock"+blockCounter;
      tableObj = document.getElementById(tableId);
      if(tableObj!=null)
      {
        inputElements  = tableObj.getElementsByTagName("INPUT");
        for(var i=0;i<inputElements.length;i++)
        {
          if(inputElements[i].getAttribute('onblur'))
          {
			//Changed by MCACross
			if(navigator.appName!="Microsoft Internet Explorer")
			{
			eval(inputElements[i].getAttribute('onblur'));
			}
			else
			{
			eval(inputElements[i].getAttribute('onblur')+";"+"anonymous();");
			}
			
			if(error_arr.length==1 && firstErrorField=="")
            {
				firstErrorField = inputElements[i].getAttribute('name');
            }
          }
        }
        inputElements  = tableObj.getElementsByTagName("textarea");
        for(var i=0;i<inputElements.length;i++)
        {
          if(inputElements[i].getAttribute('onblur'))
          {
			//changed by MCACross
			if(navigator.appName!="Microsoft Internet Explorer")
			{
			eval(inputElements[i].getAttribute('onblur'));
			}
			else
			{
			eval(inputElements[i].getAttribute('onblur')+";"+"anonymous();");
			}
			if(error_arr.length==1 && firstErrorField=="")
            {
				firstErrorField = inputElements[i].getAttribute('name');
            }
          }
        }
  	   }
      else
      {
        break;
      }
    }
    for(tableCounter=1;;tableCounter++)
    {
      tableId  = "list"+tableCounter;
      tableObj = document.getElementById(tableId);
      if(tableObj!=null)
      {
        theForm = document.forms[0];
      	if(!eval("theForm.rowModified_"+tableId))
        {
          continue;
        }
        var rows = tableObj.getElementsByTagName('tr');
        for(i = 1; i < rows.length ; i++ )
        {
          rowModifiedObj = eval("theForm.rowModified_"+tableId)[i-1];
          if(!rowModifiedObj || rowModifiedObj.value=='')
          {
            continue;
          }
          inputElements  = rows[i].getElementsByTagName("INPUT");
          for(var j=0;j<inputElements.length;j++)
          {
            if(inputElements[j].getAttribute('onblur'))
            {
				//Changed by MCACross
				if(navigator.appName!="Microsoft Internet Explorer")
				{
				eval(inputElements[j].getAttribute('onblur'));
				}
				else
				{
				eval(inputElements[j].getAttribute('onblur')+";"+"anonymous();");
				}
            }
          }
        }
      }
      else
      {
        break;
      }
    }
    if(error_arr.length!=0)
    {
      showErrors();
      flagVar='false'; //reset to initial value
      return false;
    }
    else
    {
     return true;
    }
  }
}
/*function showDetails(action,screenName,width,height,left,top,name,methodName)
{
    if(screenName == "MNT0960S" || screenName == "MNT0950S" )
    {
      if(win && !win.closed)
      {
        alert("Child window is already open!");
        win.focus();
        hideBlink();
        return;
      }
    }
    var moduleName      = action.substr(0,3).toLowerCase() ;
    windowObject.url    = '';
    windowObject.width  = width;
    windowObject.height = height;
    windowObject.left = (screen.width - windowObject.width) / 2;
    windowObject.top = (screen.height - windowObject.height) / 2;
    windowObject.name   = name;
    if(screenName == "About")
    {
      var windowAttributes = 'left=' + windowObject.left + ',top=' + windowObject.top + ',resizable=yes,width='+
                            windowObject.width +  ',height=' + windowObject.height + ',scrollbars=yes';
    }
    else
    {
      var windowAttributes = 'left=' + windowObject.left + ',top=' + windowObject.top + ',resizable=yes,width='+
                            windowObject.width +  ',height=' + windowObject.height;
    }
    windowObject.win=window.open(windowObject.url,windowObject.name, windowAttributes);
    windowObject.win.focus();    // a dynamic html is made to submit the form and call the specied action for loading the jsp.
    var tempHtml = "";
    tempHtml += "<html>";
    tempHtml += "<body>";
    if(moduleName == "mnt")
    {
      tempHtml += "<form method=post action='/"+contextRoot+"/"+moduleName+"/"+action+".do?method="+methodName+"'>";
    }
    else
    {
      tempHtml += "<form method=post action='/"+contextRoot+"/"+action+".do?method="+methodName+"'>";
    }
    tempHtml += "<input type=hidden name='method' value='"+screenName+"' >";
    tempHtml +="Please Wait, While application is getting the desired values...";
    tempHtml += "</form>";
    tempHtml +="</body>";
    tempHtml +="</html>";
    windowObject.win.document.write(tempHtml);
    windowObject.win.document.forms[0].submit();
    windowObject.win.focus();
} */ 
 //This method will create the Global Link for the Child Window Application
function createGlobalLinksAppWin()
{
  GlobalTabString="";
  GlobalTabString=  " <table class='ContainerTable' border=0 cellPadding=0 cellSpacing=0 background='" + webPath + "images/bg_hdr.jpg'  style='background-repeat:repeat-y'>";
  GlobalTabString+= " <tr>";
  GlobalTabString+= " <td width='30%'><img src='"+webPath+"images/logo2.jpg'></td>";
  GlobalTabString+= " <td width='50%'>";
  GlobalTabString+= " <td width='20%' align='center' valign='top'>";
  GlobalTabString+= " <table border=0 cellPadding=0 cellSpacing=0>";
  GlobalTabString+= " <tr align='right'>";
  GlobalTabString+= " <td valign='top'> ";
  GlobalTabString+= " <table cellpadding='2' cellspacing='0' border='0'> ";
  GlobalTabString+= " <tr> ";
  GlobalTabString+= " <td><a href='javascript:printit()'><img alt='Print Screen' width='20' border='0' src='"+webPath+"images/icon_mini_print.gif' ></a></td> ";
  GlobalTabString+= " <td><span class='glinkssep'>&nbsp;</span></td>";
  GlobalTabString+= " <td><img border='0' src='"+webPath+"images/icon_mini_help.gif' ></td> ";
  GlobalTabString+= " <td  onclick='showHide(0)' class='globallinks'>help</td> ";
  GlobalTabString+= " <td><span class='glinkssep'>&nbsp;</span></td>";
  GlobalTabString+= " <td><img border='0' src='"+webPath+"images/icon_mini_login.gif'></td> ";
  GlobalTabString+= " <td><div class='globallinks' onClick='window.close();'>close</div></td> ";
  GlobalTabString+= " </tr> ";
  GlobalTabString+= " </table> ";
  GlobalTabString+= " </td> ";
  GlobalTabString+= " </tr> ";
  GlobalTabString+= " <tr height='5px'></tr>";
  GlobalTabString+= " </table>";
  GlobalTabString+= " </td>";
  GlobalTabString+= " </tr>";
  GlobalTabString+= " </table>";
  GlobalTabString+= "<table border='0' cellspacing='0' cellpadding='0' class='ContainerTable'>";
  GlobalTabString+= "<tbody>";
  GlobalTabString+= "<tr class='ContainerTable'>";
	GlobalTabString+= "<td width='3' height='34' style='background-repeat:no-repeat' background='"+webPath+"tabimages/tabbar_left.gif'></td>";
	GlobalTabString+= "<td height='34' background='"+webPath+"tabimages/tabbar_body_fat.gif'>";
	GlobalTabString+= "<table border='0' cellpadding='0' cellspacing='0'>";
  GlobalTabString+= "<tr>";
  GlobalTabString+= "<td>&nbsp;</td>";
  GlobalTabString+= "</tr>";
	GlobalTabString+= "</table>";
	GlobalTabString+= "</td>";
	GlobalTabString+= "<td width='28' height='34' style='background-repeat:no-repeat'  background='"+webPath+"tabimages/tabbar_midcurve.gif'></td>";
  GlobalTabString+= "<td height='34' width='45%'  background='"+webPath+"tabimages/tabbar_body_slim.gif' align='right' valign='bottom' nowrap ><span class='WelcomeOption'><script language='JavaScript1.2'>showWelcomeMsg();</script></span></td>";
	GlobalTabString+= "<td width='5' height='34' style='background-repeat:no-repeat' background='"+webPath+"tabimages/tabbar_right.gif'></td>";
  GlobalTabString+= "</tr>";
  GlobalTabString+= "</tbody>";
  GlobalTabString+= "</table>";
  document.write(GlobalTabString);
  createGlobalLkMenu();
}
/* function getLabelValuePair(srcObj)
{
  var nameLabelstr;
  switch(srcObj.nodeName)
  {
    case 'INPUT'  :
      if(srcObj.getAttribute("type") == 'text')
      {
		var objId = srcObj.id;
		var len =  objId.length;
        var lastChar = objId.charAt(len-1); // check if the object is of list type if last character is a number
		var rowNum="";
		if(checkDataType(lastChar,"N"))
        {
          rowNum = objId.substring(len-1);
		  if(srcObj.value == "")
          {
			  break;
          }
		  nameLabelstr = getObjName(srcObj.id) ; // get label string
          rowNum++;
		  nameLabelstr += "   [" + rowNum + "]|"; // apend row number
        }
		else
		{
          nameLabelstr = getObjName(srcObj.id) ; // get label and separate by "|"
          nameLabelstr +=  "|";
		}
        nameLabelstr += srcObj.value;// get value of object
      }
      else if(srcObj.getAttribute("type")=='checkbox') // get labe and value for checkbox. If checked the value is "Y" else "N"
      {
        if(srcObj.checked)
        {
          if(srcObj.nextSibling.nodeName == '#text' && srcObj.nextSibling.data !=" ")
          {
              nameLabelstr  = getObjName(srcObj.id)+"-"+srcObj.nextSibling.data+"|";
              nameLabelstr+="Y";
          }
         else
          {
            nameLabelstr  = getObjName(srcObj.id)+"|";
            nameLabelstr+="Y";
          }
        }
        else
        {
          if(srcObj.nextSibling.nodeName== '#text' && srcObj.nextSibling.data !=" ")
          {
            nameLabelstr  = getObjName(srcObj.id)+"-"+srcObj.nextSibling.data+"|";
            nameLabelstr+="";
          }
         else
          {
            nameLabelstr  = getObjName(srcObj.id)+"|";
            nameLabelstr+="";
          }
        }
      }
      break;
    case 'SELECT' :
      selectobj = srcObj;
      if(srcObj.name=='sortBy') // if sorby field is present then get the label
      {
        nameLabelstr = "Sort Criteria|";
      }
      else
      {
		var objId = srcObj.id;
		var len =  objId.length;
        var lastChar = objId.charAt(len-1);
		var rowNum="";
		if(checkDataType(lastChar,"N"))
        {
          rowNum = objId.substring(len-1);
		  if(selectobj.selectedIndex!=-1)
          {
		    var temp = selectobj[selectobj.selectedIndex].text;
		    if(temp == "")
		    {
			  break;
		    }
          }
		  nameLabelstr = getObjName(srcObj.id) ;
          rowNum++;
		  nameLabelstr += "   [" + rowNum + "]|";
        }
		else
		{
          nameLabelstr = getObjName(srcObj.id) ;
          nameLabelstr +=  "|";
		}
	  }
      if(selectobj.selectedIndex!=-1)
      {
         nameLabelstr += selectobj[selectobj.selectedIndex].text;
      }
      break;
    default       :  break;
  }
  return nameLabelstr;
}*/

//if clause added by MCACross
function detectKeyup(event)
{
  if(!event)
	{
		event=window.event;
	}
  var code = event.keyCode;
  if (event.altKey && code == 80 ) //ALT+P Previous
  {
     pageLevelSubmit(this, "pagePrevious","false");
     return;
  }
  else if(!event.ctrlKey && event.altKey && code == 34)
  {
     callJoaMethod("Next","next","list1");
     return;
  }
  else if(!event.ctrlKey && event.altKey && code == 33)
  {
     callJoaMethod("Previous","previous","list1");
     return;
  }
  else if(event.ctrlKey && event.altKey && code == 34)
  {
     callJoaMethod("NextAll","nextAll","list1");
     return;
  }
  else if(event.ctrlKey && event.altKey && code == 33)
  {
     callJoaMethod("PreviousAll","previousAll","list1");
     return;
  }
  else if (event.altKey && code == 78 )  //ALT+N - Next
  {
    pageLevelSubmit(this, "pageNext","false");
    return;
  }
  switch(code)
  {
    case 13  : // Enter
      var sourceElement = window.event.srcElement;
      if(sourceElement.nodeName=='A' || sourceElement.nodeName=='IMG' ||
         sourceElement.nodeName=='TEXTAREA' || sourceElement.nodeName=='SELECT')
      {
        hideBlink();
        return;
      }
      var aObj =  document.getElementById("Default");
      if(aObj!=null)
      {
        aObj.click();
        break;
      }
      var attribDefault ='false';
      var aObj =  document.getElementById("ancSave");
      if(aObj!=null)
      {
        attribDefault =  aObj.getAttribute("default");
        if(attribDefault=='true')
        {
          aObj.click();
          break;
        }
      }
      var aObj =  document.getElementById("cancel");
      if(aObj!=null)
      {
        attribDefault =  aObj.getAttribute("default");
        if(attribDefault=='true')
        {
          aObj.click();
          break;
        }
      }
      alert("No default button defined for screen");
      break;
   case 120  : // F6
      var aObj =  document.getElementById("Default");
      if(aObj!=null)
      {
        aObj.click();
      }
      break;

   case 27  : // ESC
      var screenId = document.title;
      var index = screenId.lastIndexOf(":");
      var screenTitle = screenId.substring(index+1);
      if(screenTitle == 'Switch Port' || screenTitle =='Switch Role')
      {
        pageLevelSubmit(this,'MNT9999S','true');
      }
      else if(screenTitle =='Information/Errors/Warning window')
      {
        break;
      }
      else
      {
        pageLevelSubmit(this,'cancel','false');
      }
      break;
    case 123 : //123 is the ascii code for F12
      sourceElement = window.event.srcElement;
      if(sourceElement.nodeName!='INPUT' || sourceElement.type =='checkbox'
          || sourceElement.type =='radio')
      {
        return;
      }
      remSrcElement = sourceElement;
      var nxtSibling = sourceElement.nextSibling;
      while(nxtSibling)
      {
        if(nxtSibling.nodeName=='A')
        {
          nxtSibling.click();
          return;
        }
        nxtSibling = nxtSibling.nextSibling;
      }
      break
    case 113 : // F2 - save
      var aObj =  document.getElementById("ancSave");
      if(aObj!=null)
      {
        aObj.click();
      }
      else
      {
        alert(COM00111);
      }
      break;
    case 118 :	// F7 - close
      window.close();
      break;
    case 119 :	// F8 - Details Window
      showDetailsWindow();
      break;
  }
}
function sessionLogout()
{
document.forms[0].target = '_top';
document.forms[0].action = '/'+contextRoot+'/Login.do?method=sessionLogout';
document.forms[0].submit();
}
function addTaskId(taskID)
{
document.forms[0].taskID.value = taskID;
}
function processTableLink(method,taskID,row)
{
addTaskId(taskID);
method(row);
}
function checkSession()
{
checkForceLogout();
document.forms[0].action = '/'+contextRoot+'/Login.do?method=invalidateSession';
document.forms[0].submit();
}
function checkForceLogout()
{
var win = parent.window;
var w ;
var count=0;
if(win.opener)
{
do
  {
  if ((!win.opener) || win.name=="top")
  {
  count = count+1;
  }
  w = win.opener;
  win.close();  
  win = w ;
  }while(count < 1)
  document.forms[0].target = 'top';
 } 
else
 { 
 document.forms[0].target = '_top';
 }
}
function isDirty(tableObj)
{
  var htmlObj, opt, hasDefault, i = 0, j;
  var inputElements  = tableObj.getElementsByTagName("INPUT");
  for(counterInput = 0; counterInput < inputElements.length; counterInput++)
  {
    htmlObj = inputElements[counterInput];
    switch (htmlObj.type)
    {
      case 'text' :
      case 'password' :
      case 'hidden' :
        if ( htmlObj.value != htmlObj.defaultValue)
        {
          return true;
        }
        break;
      case 'checkbox' :
      case 'radio' :
        if (htmlObj.checked != htmlObj.defaultChecked)
        {
          return true;
        }
        break;
    }
  }
  var selectElements = tableObj.getElementsByTagName("SELECT");
  for(counterSelect = 0; counterSelect < selectElements.length; counterSelect++)
  {
    htmlObj = selectElements[counterSelect];
    switch (htmlObj.type)
    {
      case 'select-one' :
      case 'select-multiple' :
      j = 0,
      hasDefault = false;
      while (opt = htmlObj.options[j++])
      {
        if (opt.defaultSelected)
        {
          hasDefault = true;
        }
      }
      j = hasDefault ? 0 : 1;
      while (opt = htmlObj.options[j++])
      {
         if (opt.selected != opt.defaultSelected)
         {
           return true;
         }
      }
      break;
    }
  }
  var arTextArea = tableObj.getElementsByTagName('TextArea');
  for(i = 0 ; i < arTextArea.length ; i++)
  {
    var htmlObj = arTextArea[i];
    if ( htmlObj.value != htmlObj.defaultValue)
    {
      return true;
    }
  }
  if ( inputElements.length == 0 && selectElements.length == 0 && arTextArea.length == 0 )
  {
    return true;
  }
  return false;
}
/*function showHotKeys(url,width,height)
{
  if (!windowObject.win || (windowObject.win && windowObject.win.closed))
  {
    windowObject.width = width;
    windowObject.height = height;
    windowObject.name = (new Date()).getSeconds().toString();
    windowObject.left = (screen.width - windowObject.width) / 2;
    windowObject.top = (screen.height - windowObject.height) / 2;
    var windowAttributes = 'left=' + windowObject.left + ',top=' + windowObject.top + ',resizable=no,width='+
                            windowObject.width +  ',height=' + windowObject.height;
    windowObject.url = url;
    windowObject.win=window.open(windowObject.url, windowObject.name, windowAttributes);
  }
}*/
function showSerErrors()
{
  var fatalLen  = fatal_arr.length;
  var errorLen  = serverErr_arr.length;
  var warnLen   = warn_arr.length;
  var infoLen   = info_arr.length;
  var count = 0;
  str = "<html>"
      + "  <head>"
	  + "  <META http-equiv='Content-Type' content='text/html; charset=UTF-8'>"
      + "    <link href='" + jsWebPathDetails + "css/pofstylesheet.css' type='text/css' rel='stylesheet'>"
      + "    <script language='JavaScript' src='" + jsWebPathDetails + "js/Joa.js'></script>"
      + "    <title>"
      + "      Information/Errors/Warning window"
      + "    </title>"
      + " </head>"
      + "<body onload='javascript:focusWindow()'>"
      + "  <form name='dummy' action='dummyAction'>"
      + "    <table class='Messages' align=center cellspacing=1 cellpadding=0 border='0'>";
  if ( fatalLen != 0 )      // show fatal errors
  {
    var lastEle = (fatalLen);
    count       =  fatalLen + errorLen + warnLen + infoLen ;
  str +="  <tr  class='RowDataHdr2'>"
      + "    <td  class='RowDataHdr2' colspan='4'>"
      + "      <table class='RowDataHdr2' border='0'>"
      + "        <tr width='100%'>"
      + "          <td><img width='30' src='" + jsWebPathDetails + "images/erroricon_pagetitle.gif'></td>"
      + "          <td>Fatal Error</td>"
      + "        </tr>"
      + "      </table>"
      + "    </td>"
      + " </tr>"
      + "  <tr class='RowDataFatal'>"
      + "    <td width='80%' colspan='3' class='fieldwrap'>"
      + fatal_arr[0]
      + "    </td>"
      + "    <td width='20%' align='center'>"
      + "      <a href='#' onclick='javascript:showErrorDiv("+count+",\"errorRow\");'>";
      // if fatal error length is 1 then hide more button gif
    if(fatalLen == 1)
    {
      str+= "      <img style='display:none' id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0'></a>";
    }
    else
    {
      str+= "<div id='fatalMore' class='LINKSON' style='position:relative'>"
      + "  <img id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0' onclick='changeImg(\"fatalMore\",\"fatalLess\");'>"
      + "</div>"
      + "<div id='fatalLess' class='LINKSOFF' style='position:relative'>"
      + "  <img id='img' alt='' src='" + jsWebPathDetails + "images/less.gif' border='0' onclick='changeImg(\"fatalLess\",\"fatalMore\");'>"
      +    "</a>"
      + "</div>";
    }
      str+= "    </td>"
      + "  </tr>";
    for(var i = 1; i < lastEle ; i++)
    {
      str+="  <tr class='RowData' style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width='10%' align='center'><img  width='15' src='" + jsWebPathDetails + "images/erroricon_pagetitle.gif'</td> "
      +"    <td width='80%' colspan='3'>"
      +"    <textarea rows='5' cols='68'  class='DataFont'>"
      +      fatal_arr[i]
      +"    </textarea>"
      +"    </td>"
      +"  </tr>";
    }
    for(var i = 0; i < errorLen ; i++)
    {
      str+="  <tr class='RowDataError' style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width=10% align='center' class='RowData'><img width='15' src='" + jsWebPathDetails + "images/erroricon_pagetitle.gif'</td>"
      +"    <td width='20%'>"
      //+serverErrCtx_arr[i] show context sensitive information
      +"    </td>"
      +"    <td width='70%' colspan='2' class='fieldwrap'>"
      +       serverErr_arr[i]
      +"    </td>"
      +"  </tr>";
    }
    for(var i = 0; i < warnLen ; i++)
    {
      str+=" <tr class='RowDataWar'  style='display:none' id='errorRow"+(--count)+"'>"
      +"   <td width=10% align='center' class='RowData'><img width='15' src='" + jsWebPathDetails + "images/warningicon_pagetitle.gif'</td>"
      +"   <td width='20%'>"
      //+warnCtx_arr[i]
      +"   </td>"
      +"   <td width='70%' colspan='2' class='fieldwrap'>"
      +     warn_arr[i]
      +"   </td>"
      +" </tr>";
    }
    for(var i = 0; i < infoLen ; i++)
    {
      str+="  <tr class='RowDataInfo'  style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width=10% align='center' class='RowData'><img width='15' src='" + jsWebPathDetails + "images/infoicon_pagetitle.gif'</td>"
      +"    <td width='20%' >"
      //+infoCtx_arr[i]
      +"    </td>"
      +"    <td width='70%' colspan='2' class='fieldwrap'>"
      +info_arr[i]
      +"    </td>"
      +"  </tr>";
    }
  }
  else if(errorLen != 0)
  {
    var lastEle = (errorLen);
    count       =  errorLen + warnLen + infoLen ;
    str+="  <tr  class='RowDataHdr2'>"
    +"    <td  class='RowDataHdr2' colspan='4'>"
    +"      <table class='RowDataHdr2'>"
    +"        <tr>"
    +"          <td width=10%><img width='30' src='" + jsWebPathDetails + "images/erroricon_pagetitle.gif'</td>"
    +"          <td>Errors</td>"
    +"        </tr>"
    +"      </table>"
    +"    </td>"
    +"  </tr>"
    +"  <tr class='RowDataError'>"
    +"    <td width='80%' colspan='3'  class='fieldwrap'>"
    +serverErr_arr[0]
    +"    </td>"
    +"    <td width='20%' align='center'>"
    +"      <a href='#' onclick='javascript:showErrorDiv("+count+",\"errorRow\");'>";
    if(errorLen == 1)
    {
      str+="      <img style='dispaly:none' id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0'></a>";
    }
    else
    {
      str+="<div id='errorMore' class='LINKSON' style='position:relative'>"
      +" <img id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0' onclick='changeImg(\"errorMore\",\"errorLess\");'>"
      +"</div>"
      +"<div id='errorLess' class='LINKSOFF' style='position:relative'>"
      +" <img id='img' alt='' src='" + jsWebPathDetails + "images/less.gif' border='0' onclick='changeImg(\"errorLess\",\"errorMore\");'>"
      +"</a>"
      +"</div>";
    }
    str+="    </td>"
     +"  </tr>";
    for(var i = 1; i < lastEle ; i++)
    {
      str+="  <tr class='RowDataError' style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width=10% align='center' class='RowData'><img  width='15' src='" + jsWebPathDetails + "images/erroricon_pagetitle.gif'</td>"
      +"    <td width='20%'>"
      //+serverErrCtx_arr[i]
      +"    </td>"
      +"    <td width='70%' colspan='2'  class='fieldwrap'>"
      +serverErr_arr[i]
      +"    </td>"
      +"  </tr>";
    }
    for(var i = 0; i < warnLen ; i++)
    {
      str+="  <tr class='RowDataWar'  style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width='10%'align='center' class='RowData'><img width='15' src='" + jsWebPathDetails + "images/warningicon_pagetitle.gif'</td>"
      +"    <td width='20%'>"
      //+warnCtx_arr[i]
      +"    </td>"
      +"    <td width='70%' colspan='2'  class='fieldwrap'>"
      +warn_arr[i]
      +"    </td>"
      +"  </tr>";
    }
    for(var i = 0; i < infoLen ; i++)
    {
      str+="  <tr class='RowDataInfo'  style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width=10% align='center' class='RowData'><img width='15' src='" + jsWebPathDetails + "images/infoicon_pagetitle.gif'</td>"
      +"    <td width='20%' >"
      //+infoCtx_arr[i]
      +"    </td>"
      +"    <td width='70%' colspan='2'  class='fieldwrap'>"
      +info_arr[i]
      +"    </td>"
      +"  </tr>";
    }
  }
  else if(warnLen != 0)
  {
    var lastEle = (warnLen);
    count       = warnLen + infoLen ;
    str+="  <tr class='RowDataHdr2'>"
    +"    <td class='RowDataHdr2' colspan='4'>"
    +"      <table class='RowDataHdr2'>"
    +"        <tr >"
    +"          <td width=10%><img width='30' src='" + jsWebPathDetails + "images/warningicon_pagetitle.gif'</td>"
    +"          <td >Warnings</td>"
    +"        </tr>"
    +"      </table>"
    +"    </td>"
    +"  </tr>"
    +"  <tr class='RowDataWar'>"
    +"    <td width='80%' colspan='3'  class='fieldwrap'>"
    +warn_arr[0]
    +"    </td>"
    +"    <td width='20%' align='center'>"
    +"      <a href='#' onclick='javascript:showErrorDiv("+count+",\"errorRow\");'>";
    if(warnLen == 1)
    {
      str+="      <img style='display:none' id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0'></a>";
    }
    else
    {
      str+="<div id='warnMore' class='LINKSON' style='position:relative'>"
      +"  <img id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0' onclick='changeImg(\"warnMore\",\"warnLess\");'>"
      +"</div>"
      +"<div id='warnLess' class='LINKSOFF' style='position:relative'>"
      +"  <img id='img' alt='' src='" + jsWebPathDetails + "images/less.gif' border='0' onclick='changeImg(\"warnLess\",\"warnMore\");'>"
      +"</a>"
      +"</div>";
    }
    str+="    </td>"
    +"  </tr>";
    for(var i = 1; i < lastEle ; i++)
    {
      str+="  <tr class='RowDataWar'  style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width=10% class='RowData' align='center'><img width='15' src='" + jsWebPathDetails + "images/warningicon_pagetitle.gif'</td>"
      +"    <td width='20%'>"
      //+warnCtx_arr[i]
      +"    </td>"
      +"    <td width='70%' colspan='2'  class='fieldwrap'>"
      +warn_arr[i]
      +"    </td>"
      +"  </tr>";
    }
    for(var i = 0; i < infoLen ; i++)
    {
      str+="  <tr class='RowDataInfo'  style='display:none' id='errorRow"+(--count)+"'>"
      +"  <td width=10% class='RowData' align='center' ><img width='15' src='" + jsWebPathDetails + "images/infoicon_pagetitle.gif'</td>"
      +"  <td width='20%' >"
      //+infoCtx_arr[i]
      +"  </td>"
      +"  <td width='70%' colspan='2'  class='fieldwrap'>"
      +info_arr[i]
      +"    </td>"
      +"  </tr>";
    }
  }
  else
  {
    var lastEle = (infoLen);
    count       = infoLen ;
    str+="  <tr class='RowDataHdr2'>"
    +"    <td class='RowDataHdr2' colspan='4'>"
    +"      <table class='RowDataHdr2' "
    +"        <tr >"
    +"          <td width=10% ><img width='30' src='" + jsWebPathDetails + "images/infoicon_pagetitle.gif'</td>"
    +"          <td>Information</td>"
    +"        </tr>"
    +"      </table>"
    +"    </td>"
    +"  </tr>"
    +"  <tr class='RowDataInfo'>"
    +"    <td width='80%' colspan='3'  class='fieldwrap'>"
    +info_arr[0]
    +"    </td>"
    +"    <td width='20%' align='center'>"
    +"      <a href='#' onclick='javascript:showErrorDiv("+count+",\"errorRow\");'>";
    if(infoLen == 1)
    {
      str+="      <img style='display:none' id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0'></a>";
    }
    else
    {
      str+="<div id='infoMore' class='LINKSON' style='position:relative'>"
      +"      <img id='img' alt='' src='" + jsWebPathDetails + "images/more.gif' border='0' onclick='changeImg(\"infoMore\",\"infoLess\");'>"
      +"</div>"
      +"<div id='infoLess' class='LINKSOFF' style='position:relative'>"
      +"      <img id='img' alt='' src='" + jsWebPathDetails + "images/less.gif' border='0' onclick='changeImg(\"infoLess\",\"infoMore\");'>"
      +"</a>"
      +"</div>";
    }

    str+="    </td>"
    +"  </tr>";
    for(var i = 1; i < lastEle ; i++)
    {
      str+="  <tr class='RowDataInfo'  style='display:none' id='errorRow"+(--count)+"'>"
      +"    <td width=10% class='RowData' align='center'><img width='15' src='" + jsWebPathDetails + "images/infoicon_pagetitle.gif'</td>"
      +"    <td width='20%'>"
      //+infoCtx_arr[i]
      +"    </td>"
      +"    <td width='70%' colspan='2'  class='fieldwrap'>"
      +info_arr[i]
      +"    </td>"
      +"  </tr>";
    }
  }
  str+="</table>"
  +"<table cellpadding='0' cellspacing='0' border='0' align='right'>"
  +"  <tr><td class='PageButtonsBefore'></td></tr>"
  +"  <tr> ";
  if ( fatalLen != 0 || errorLen != 0 )
  {
    str+="    <td class='PageBtnSpacing'></td>"
    +"    <td><img alt='' src='" + jsWebPathDetails + "images/bigbtn_left.gif' border='0'></td>"
    +"    <td nowrap='nowrap' background='" + jsWebPathDetails + "images/bigbtn_body.gif' class='LargeBtnText'>"
    +"      <a id='Default' class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"cancelError\", \"false\")'>"
    +"        Close"
    +"      </a>"
    +"    </td>"
    +"    <td nowrap='nowrap'><img alt='' src='" + jsWebPathDetails + "images/bigbtn_right.gif' border='0'></td>";
  }
  else if ( warnLen != 0 )
  {
    str+="    <td class='PageBtnSpacing'></td>"
    +"    <td><img alt='' src='" + jsWebPathDetails + "images/bigbtn_left.gif' border='0'></td>"
    +"    <td nowrap='nowrap' background='" + jsWebPathDetails + "images/bigbtn_body.gif' class='LargeBtnText'>"
    +"      <a class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"continueError\", \"false\")'>"
    +"        Continue"
    +"      </a>"
    +"    </td>"
    +"    <td nowrap='nowrap'><img alt='' src='" + jsWebPathDetails + "images/bigbtn_right.gif' border='0'></td>"
    +"    <td class='PageBtnSpacing'></td>"
    +"    <td><img alt='' src='" + jsWebPathDetails + "images/bigbtn_left.gif' border='0'></td>"
    +"    <td nowrap='nowrap' background='" + jsWebPathDetails + "images/bigbtn_body.gif' class='LargeBtnText'>"
    +"      <a id='Default' class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"cancelError\", \"false\")'>"
    +"        Close"
    +"      </a>"
    +"    </td>"
    +"    <td nowrap='nowrap'><img alt='' src='" + jsWebPathDetails + "images/bigbtn_right.gif' border='0'></td>";
  }
  else if ( infoLen != 0 )
  {
    str+="    <td class='PageBtnSpacing'></td>"
    +"    <td><img alt='' src='" + jsWebPathDetails + "images/bigbtn_left.gif' border='0'></td>"
    +"    <td nowrap='nowrap' background='" + jsWebPathDetails + "images/bigbtn_body.gif' class='LargeBtnText'>"
    +"      <a id='Default' class='LargeBtnText' href='#' onclick='javascript:pageLevelSubmit(this, \"cancelError\", \"false\")'>"
    +"        Close"
    +"      </a>"
    +"    </td>"
    +"    <td nowrap='nowrap'><img alt='' src='" + jsWebPathDetails + "images/bigbtn_right.gif' border='0'></td>";
  }
  str+="  </tr>"
  +"</table>"
  +"</form>"
  +"</body>"
  +"</html>";
hideBlink();
  flagVar='false';
  showModalWin("",475,200,"yes","yes","no",str); // call show modal dialog for modal window
  focusOnFirstElement(); // after closing the pop-up }
/*  windowObject.win = modalWin("",475,200);
  windowObject.win.document.writeln(str);
  windowObject.win.focus();
  var bodyObj = windowObject.win.document.getElementsByTagName('BODY');
  windowObject.win.eval(bodyObj[0].getAttribute('onload')+";"+"anonymous();");*/
}
function showErrorDiv(count,menuID)
{
  for(var i=1; i<count;i++)
  {
    divId       = menuID+i;
    divObj      = document.getElementById(divId); // get the particular element which is selected.
    if(divObj.style.display == "none")     // If clause to switch on the menu
  	 {
    	divObj.style.display = '';
     }
     else
     {
       divObj.style.display = 'none';
     }
  }
   return;
}
function changeImg(divId1,divId2)
{
    var divObj1 = document.getElementById(divId1);
    var divObj2 = document.getElementById(divId2);
    divObj1.className="LINKSOFF";
    divObj2.className="LINKSON";
}
var intervalVar = null;
function doBlink()
{
  var blink = document.getElementsByTagName('BLINK');
}
function hideBlink()
{
  var blink = document.getElementsByTagName('BLINK');
  clearInterval(intervalVar);
  if (blink[0]!=undefined)
  {
	  blink[0].style.visibility = "hidden";
  }
}
function startBlink()
{
   if(document.createElement)
  {
    intervalVar = setInterval("doBlink()",500)
  }
}
function checkBrowser()
{
  version = navigator.appVersion;
  if(navigator.appName!="Microsoft Internet Explorer")
  {
     alert("This apllication is not supported in " + navigator.appName);
  }
  else if(navigator.appVersion.indexOf("MSIE")!=-1)
  {
    temp=navigator.appVersion.split("MSIE");
    version =parseFloat(temp[1]);
    if( !(version >= 6.0))
    {
       alert("This apllication is not supported in " + navigator.appName + " "  + version);
    }
  }
  else if((navigator.appName == "Netscape"))
  {
    temp=navigator.userAgent.split("Netscape6/");
    version =parseFloat(temp[1]);
    if( !(version >= 6.0))
    {
       alert("This apllication is not supported in " + navigator.appName + " "  + version);
    }
  }
}
function disableAllFields()
{
  theForm = document.forms[0];
  if(theForm.screenMode.value=='View')
  {
    elements  = theForm.elements;
    elemCount =elements.length;
    for(i=0;i<elemCount;i++)
    {
      elements[i].disabled = true;
    }
  }
}
function disableFields()
{
  var htmlObj;
  var argList = disableFields.arguments;
  var objSaveMode = eval("document.forms[0].hidSaveMode_"+argList[0]);
  if(objSaveMode.value =='New')
  {
    return;
  }
  for(i=1;i < argList.length;i++)
  {
    var fieldName = argList[i];
    htmlObj = document.forms[0].elements[fieldName];
    var htmlObjCount = htmlObj.length;
    for(j=0;j< htmlObjCount;j++)
    {
      htmlObj[j].disabled=true;
    }
  }
}
function printit()
{
  Window.print() ;
}
function before_submit()
{
}
function focusWindow()
{
 if (opener)
 {
  opener.setFocus();
 }
}
function setFocus()
{
 window.onfocus = checkModal;
}
function checkModal()// make child window modal
{
 setTimeout("finishChecking()", 0);
 return true;
}
function finishChecking()// if child window is opened the keep focus on it
{
 if (windowObject.win && !windowObject.win.closed)
 {
  windowObject.win.focus();
 }
}
function openPopup(width, Height)
{
  theForm = document.forms[0];
  var win =  modalWin("",width, Height);
  theForm.target = win.name;
  isPopup = true;
}
function ignoreEvents(e)
{
  return false;
}
function focusOnFirstElement()
{			//Following code sets the tabindex of IFrame to -1 so that it is hidden
  var iframeObj = document.getElementsByTagName("IFRAME");
  if(iframeObj.length != undefined && iframeObj.length == 1)
  {
    iframeObj[0].tabIndex=-1;
  }
  else if(iframeObj.length != undefined && iframeObj.length > 1)
  {
    for(var i=0;i<iframeObj.length;i++)
    {
      iframeObj[i].tabIndex=-1;
    }
  }
  var objFormElements = document.forms[0]; // get all form elements
  var elemCount = objFormElements.length
  var elem;
  for (var i=0; i<elemCount; i++)
  {
    elem = objFormElements.elements[i];    // if element is not hidden or readonly then set the focus
    if(!(elem.isDisabled || elem.getAttribute("readOnly") || elem.type == 'hidden'))
    {
      try
      {
        elem.focus();
      }
      catch(e)
      {
        break;
      }
      if(elem.name.indexOf("radSelect") != -1 || elem.name.indexOf("chkSelect")!=-1)          // Select the first record only if no record is selected.
      {
          if(isRowSelected("list1").length == 0)
          if(elem.type != "checkbox")
	          elem.click();
      }
      break;
    }
  }
}
//Added for Track Transaction status
function changeTables()
{
  focusOnFirstElement();
  var tableid;
  var tableObj;
  for(tablCounter=1;;tablCounter++)
  {
    tableid  = "list"+tablCounter;
    tableObj = document.getElementById(tableid);
    if(tableObj!=null)
    {
      var varId= "Data_"+tableid;
      buildArray(tableObj, varId);      // Mark Deleted record as deleted if error comes in the operation
      var rowModifiedObj = eval("document.forms[0].rowModified_"+tableid);
      var noOfRows = 0;
      if(rowModifiedObj)
      {
        noOfRows = rowModifiedObj.length;
      }
      var i=0;
      for(i=0;i<noOfRows;i++)
      {
      	if(rowModifiedObj[i].value=='Deleted')
      	{
      	  var rowObj = rowModifiedObj[i].parentElement.parentElement;
      	  deleteRow(rowObj, tableid);
      	}
      }
    }
    else
    {
      break;
    }
  }
}
function buildArray(table,varId)
{
  var rowData= new Array();
  var i=0;
  rows = table.getElementsByTagName("TR");
  for(i = 1 ; i < rows.length ;  i++ )
  {
    var rowData= new Array();
    cols = rows[i].getElementsByTagName("TD");
    ind=0;
    for(j = 0 ; j < cols.length ;  j++)
    {
      col=cols[j];
      if(col.childNodes[0])
      {
      	htmlObj = col.childNodes[0];
      	htmlObjType= htmlObj.type;
        switch(htmlObj.nodeName)
        {
          case 'INPUT'  :  if(htmlObjType!='radio' && htmlObjType!='hidden' &&
                              htmlObjType!='checkbox')
                           {
                             rowData[ind]=htmlObj.value;
                             ind++;
                           }
                           else if(htmlObjType=='checkbox')
                           {
                             if(htmlObj.checked)
                             {
                              rowData[ind]=1;
                             }
                             else
                             {
                               rowData[ind]= 0;
                             }
                             ind++;
                           }
                           break;
          case 'SELECT' :  rowData[ind]=htmlObj.selectedIndex;
                           ind++;
                           break;
          default       :  break;
        }
      }
    }
    eval(varId)[i-1]=rowData;
  }
}

function anonymous(){
//dont del this
}

