function GetCalDate(tDate, tName, tForm)
{
  openWindow('/CFDB/global/cal.asp?tDate='+ tDate + '&tName=' + tName + '&tForm=' + tForm, 'CAL', '228', '195')
  //openWindow('/CFDB/global/cal.asp?tDate='+ tDate + '&tName=' + tName + '&tForm=' + tForm, 'CAL', '160', '175')
}

function openWindow(strURL, strName, lngHeight, lngWidth)
{
  var strFeatures = "resizable=no,height=" + lngHeight.toString() + 
    ",width=" + lngWidth.toString();
  rVal = window.open(strURL, strName, strFeatures);
  if (!rVal.opener) rVal.opener = self;
  rVal.focus();
}
function openModalWindow(strURL,strName,lngHeight,lngWidth)
{
  lngHeight = (parseInt(lngHeight) + 20).toString()
  lngWidth = (parseInt(lngWidth) + 4).toString()
  
  var retVal = window.showModalDialog(strURL,strName,'dialogWidth:' + lngWidth + 'px;dialogHeight:' + lngHeight +  'px;status:no;');
  return retVal
}

function openReportWindow(strURL, strName, lngHeight, lngWidth)
{
  var strFeatures = "resizable=no,height=" + lngHeight.toString() + 
    ",width=" + lngWidth.toString() + ",scrollbars=yes,toolbar=yes";
  rVal = window.open(strURL, strName, strFeatures);
  if (!rVal.opener) rVal.opener = self;
  rVal.focus();
}

function confirmYN(msg)
{
  var yn = window.showModalDialog('/cfdb/global/confirm.asp',msg,'dialogWidth:350px;dialogHeight:275px;status:no;');
  if (yn){return true}
  return false;
}

function deleteItem(inputName, frmName, warningText)
{
for (var i=0;i<frmName.elements.length;i++)
  {
  var e = frmName.elements[i];
  if (e.name == inputName)
    {
     if (e.checked)
      {
        if(!confirm("**** Warning ****\n\nYou are about to permanetly delete " + warningText + ".\n\n Are you sure?")){return false};
        {
          frmName.A.value='Delete';
          frmName.submit()
          return true;
        }
       return false;
      }7
    }
  }
  alert('You must select at least one item to delete')
  return false;
}


function editDropDown(RSN,urlStr,intHeight,intWidth,wndName)
{ 
  if (RSN.length ==2)
  {
    openWindow('/cfdb/admin/global/adlist.asp?A=Add&RSN='+ RSN.value + urlStr,wndName,intHeight,intWidth)
    return
  }
  {
    if (RSN.value == -1)
    {
      openWindow('/cfdb/admin/global/adlist.asp?A=Add&RSN='+ RSN.value + urlStr,wndName,intHeight,intWidth)
      return false
    }
    openWindow('/cfdb/admin/global/adlist.asp?A=Edit&RSN='+ RSN.value + urlStr,wndName,intHeight,intWidth)
  }
}

function editDefinedDropDown(RSN,urlStr,intHeight,intWidth,wndName)
{
  if (RSN.length ==2)
  {
    openWindow(urlStr+'&A=Add',wndName,intHeight,intWidth)
    return
  }
  {
    if (RSN.value == -1)
    {
      openWindow(urlStr+'&A=Add',wndName,intHeight,intWidth)
      return false
    }
    openWindow(urlStr+'&A=Edit',wndName,intHeight,intWidth)
  }
}

function ResizeIFrameTable(intNoOfCols, strName)
{
  for (var i=1; i<intNoOfCols; i++)
  {
    objHead = parent.document.images(strName+"h"+i);
    objCol =  document.images("c"+i);
    objCol.width > objHead.width ? objHead.width = objCol.width :  objCol.width = objHead.width;
  }
}

function editList(RSN,urlStr,intHeight,intWidth,wndName)
{ 
  openWindow('/cfdb/admin/global/adlist.asp?A=Edit&RSN='+ RSN + urlStr,wndName,intHeight,intWidth)
}

function addtoList(urlStr,intHeight,intWidth,wndName)
{ 
  openWindow('/cfdb/admin/global/adlist.asp?A=Add'+ urlStr,wndName,intHeight,intWidth)
}

function selAllInv(tTag,tObj,tFrm)
{
  for (var i=0;i<tFrm.elements.length;i++)
  {
  var e = tFrm.elements[i];
  if (e.name == tTag)
    {
    e.checked = tObj.checked;
    }
  }
}

function getXMLSingleRecord(Fieldname,FieldType,strTableName,f1,frmName)
{ 
  arrFieldname = Fieldname.split("|")
  arrFieldType = FieldType.split("|")
  if (f1 == -1) 
  {
    for (var i=0; i<arrFieldname.length; i++)
    {      
      if(arrFieldType[i] =='sel')
      { 
      obj=document.all(arrFieldname[i])
        {
         obj.options[0].selected = true;
        }
      }      
      else
      {
        document.all(arrFieldname[i]).value = ""
      }
    }
  }
  else
  {
    var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
    xmlDoc.async="false"
    xmlDoc.load('/cfdb/global/getXMLAdv.asp?t=' + strTableName + '&f1=' + f1)
    { 
      nodes = xmlDoc.selectSingleNode("RecordSet")
      for (var i=0; i<arrFieldname.length; i++)  
      {
        var RecordSet = nodes.selectNodes("col"+(i+1))
        var Field = RecordSet.nextNode()
        if(arrFieldType[i] =='sel')
        {  
          obj=document.all(arrFieldname[i])
          for (var ifr=0;ifr<obj.length;ifr++)
          {
            if(obj[ifr].value == Field.text)
            {
             obj.options[ifr].selected = true;
            }
            if(Field.text =="")
            {
             obj.options[0].selected = true;
            }
          }
        }
        else
        {
          document.all(arrFieldname[i]).value = Field.text
        }
      }
    }
  }
}

function getXMLRecordSet(intID,strTableName,FieldName,f1,k,blnSelectFirst)
{
  
  //alert('intID:::' + intID)
  //alert('strTableName:::' + strTableName)
  //alert('FieldName:::' + FieldName)
  //alert('f1:::' + f1)
  
  var blnSelectNextValue = false
  var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
  xmlDoc.async="false"
  xmlDoc.load('/CFDB/global/getXMLlist.asp?t=' + strTableName + '&f1=' + f1)
  
  //document.write('/CFDB/global/getXMLlist.asp?t=' + strTableName + '&f1=' + f1)
  
  //check for error
  {
  nodes = xmlDoc.selectSingleNode("RecordSet")
  var RecordSet = nodes.selectNodes("row")    	
  
  if (!k > 0)
  {
    var k = 2;
  }
  FieldName.options.length=k;
  //Populate Products DropDown
    for(var Field = RecordSet.nextNode(); Field; Field = RecordSet.nextNode())
    {
    	if (Field.attributes(0).value == intID)
    	  {
    	    blnSelected = true
    	  }
    	else
    		{
    	    blnSelected = false
    	  }
    	if ((blnSelectNextValue) && !(Field.attributes(0).value==-1))
    	{
    	  blnSelected = true
    	  blnSelectNextValue = false
    	}
    	
    	if ((blnSelectFirst) && (k == 3))
    	{ 
    	  if (Field.attributes(0).value==f1)
    	  {
    	    blnSelectNextValue = true
    	  }
    	  else
    	  {
    	    blnSelected = true
    	  }
    	}
    	FieldName.options[k] = new Option(Field.text, 
    	  Field.attributes(0).value,false,blnSelected);
    	k++;
    }//for
  }
}

function test_getXMLRecordSet(intID,strTableName,FieldName)
{
  var xmlDoc=new ActiveXObject("Microsoft.XMLDOM")
  xmlDoc.async="false"
  xmlDoc.load('/cfdb/global/getXMLlist.asp?t=' + strTableName)
  //check for error
  {
  	nodes = xmlDoc.selectSingleNode("RecordSet")
  	var RecordSet = nodes.selectNodes("row")    	
  	var k = 0;
  	//Populate Products DropDown
    var intListIndex
  	for(var Field = RecordSet.nextNode(); Field; Field = RecordSet.nextNode())
 	{
  		if (Field.text == intID){intListIndex = k}
      FieldName.AddItem (Field.attributes(0).value);
      FieldName.Column(1,k) = Field.text
  		k++;
  	}//for
  }

  FieldName.ListIndex = intListIndex

}

function toggleItem(obj)
{
  obj.style.display=='' ? obj.style.display='none' : obj.style.display=''
}

function toggleButton(obj, objstate)
{

  if (objstate.checked)
  {
    obj.disabled = false
  }
  else
  {
    obj.disabled=true
  }
  
}

function isNumber(num)
{
  if (((num / num) != 1) && (num != 0))
  {
    return false;
  }
} 

function round(number,X)
{ 
  X = (!X ? 2 : X);
  return Math.round(number*Math.pow(10,X))/Math.pow(10,X); 
}

function percent(num)
{ 
  if ((num.value > 0.0001) && (num.value <= 1))
  {
    num.value =  round((num.value)*100,1) + '%'
  }
}

function sendEmail(str)
{
  window.location.href='mailto:' + str
}

function makeFormDirty()
{
  document.all.isDirty.value = true  
}
function isFormDirty()
{
  if (document.all.isDirty.value =='true')
  {
    if (confirm('**** Warning ****\n\nYou have changed the data on this form .\n\n Do you want to save?'))
    {
      return validateForm(true)
    }
  }
}

function isEmail(string)
{
  if (string.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) != -1)
    return true;
  else
    return false;
}


function y2k(number) { return (number < 1000) ? number + 1900 : number; }

function isDate (day,month,year)
{
  var today = new Date();
  year = ((!year) ? y2k(today.getFullYear()):year);
  month = ((!month) ? today.getMonth():month-1);
  if (!day) return false
  var test = new Date(year,month,day);
  if ( (y2k(test.getFullYear()) == year) &&
       (month == test.getMonth()) &&
       (day == test.getDate()) )
      return true;
  else
      return false
}
