  function SetinnerHTML(id,message,pop) {
    if (pop.toLowerCase()=='pop')
        popup.document.getElementById(id).innerHTML=message;
    else
        document.getElementById(id).innerHTML=message;
  }
  function ReadFileIntoArray(RFIAfilename) {
//alert('READING FILE '+RFIAfilename);
    var RFIAfso        =new ActiveXObject("Scripting.FileSystemObject");
    var RFIAfsob       =RFIAfso.OpenTextFile(RFIAfilename, 1,false,0);
    RFIADataArray      =new Array();
    while (!RFIAfsob.AtEndOfStream)
      {
        RFIADataArray.push(RFIAfsob.ReadLine());
      }
    RFIAfsob.Close();
    return(RFIADataArray);
  }
  function GetAnyDateType(GADTParm) {

    var GADTd=new Date();
    var GADTccyy=GADTd.getFullYear();
    var GADTmm  =GADTd.getMonth()+1;
    GADTmm=GADTmm.toString();
    if (GADTmm.length==1) GADTmm='0'+GADTmm;
    var GADTdd  =GADTd.getDate();
    if (GADTdd.length==1) GADTdd='0'+GADTmm;
    
    if (GADTParm.toLowerCase()=='sortdate')
        var GADTdateo=GADTccyy.toString()+GADTmm+GADTdd;
    return(GADTdateo);
  }
   function ParseByWhiteSpace(PBWSrecord) {
     PBWSreta=new Array();
     PBWSreta[1]='';
     var PBWScnt=1;
     for (var PBWSlp1=0;PBWSlp1<PBWSrecord.length;PBWSlp1++)
      {
       PBWSind   =PBWSrecord.substr(PBWSlp1,1);
       if (PBWSind==' ')
         {
          if (PBWSreta[PBWScnt].length>0)
            {
             PBWScnt++;
             PBWSreta[PBWScnt]='';
            }
         }
       else
         {
          PBWSreta[PBWScnt]=PBWSreta[PBWScnt]+PBWSind;          
         }
     }
    PBWSreta[0]=PBWScnt;
    return(PBWSreta);
   }
  function StripSpaces(SSIn) {
    while (SSIn.substr(0,1)==' ')
      {
       SSIn=SSIn.substr(1);
      }
    while (SSIn.substr(SSIn.length-1,1)==' ')
      {
       SSIn=SSIn.substr(0,SSIn.length-1);
      }
    return(SSIn);
  }  
  function StripDodgyChar(SSIn) {
    while (SSIn.charCodeAt(0)=='160')
      {
       SSIn=SSIn.substr(1);
      }
    while (SSIn.charCodeAt(SSIn.length-1)=='160')
      {
       SSIn=SSIn.substr(0,SSIn.length-1);
      }
    return(SSIn);
  } 
  function CheckFileExists(CFEfilename) {
    var CFEfso        =new ActiveXObject("Scripting.FileSystemObject");
    return(CFEfso.FileExists(CFEfilename));
  }
  function ExecuteShellCommands(ESCcommandtoRun,ESCcommandParms,ESCcheckfile,ESCvisible) {
    var ESCoShell = new ActiveXObject("Shell.Application");
    ESCoShell.ShellExecute(ESCcommandtoRun, ESCcommandParms, "", "open", ESCvisible);
    if (ESCcheckfile!='')
      {
       while (CheckFileExists(ESCcheckfile)==true)
        {}
      }
  }
   function ParseByLayout(PBLrecord,PBLlayoutarray) {
     PBLreta=new Array();
     var PBLcnt=1;
     for (var PBLlp1=0;PBLlp1<PBLlayoutarray.length;PBLlp1++)
      {
       PBLlr=PBLlayoutarray[PBLlp1].split(',');
       var PBLcolumn=PBLrecord.substr(PBLlr[0],PBLlr[1]);
       PBLreta.push(PBLcolumn);
     }
    return(PBLreta);
   }
  function WriteFileFromArray(wffafilename,wffaDataArray) {
//alert(wffafilename);
    var wffafso  = new ActiveXObject("Scripting.FileSystemObject")
    var wffafsob = wffafso.CreateTextFile(wffafilename, 1)
    for (wffa=0;wffa<wffaDataArray.length;wffa++)
       {
        wffafsob.WriteLine(wffaDataArray[wffa]);
       }
    wffafsob.Close();
  }
  function WriteFileAllArray(wfaafilename,wfaaDataArray) {
//alert(wfaafilename);
    var wfaafso  = new ActiveXObject("Scripting.FileSystemObject")
    var wfaafsob = wfaafso.CreateTextFile(wfaafilename, 1)
    wfaafsob.Write(wfaaDataArray);
    wfaafsob.Close();
  }
  function GetSelectedOption(GSOfield) {
    var GSOx=document.getElementById(GSOfield);
    var GSOidx=GSOx.selectedIndex;
    var GSOSelectedOption=GSOx.options[GSOidx].text;
    return(GSOSelectedOption);
  }
  function ClearDropDownOptions(CDDOfield) {
    var CDDOx=document.getElementById(CDDOfield);
    while (CDDOx.length>0)
      {
       CDDOx.remove(0);
      }
  }
  function AddDropDownOptions(ADDOfield,ADDOoption) {
    var ADDOy=document.createElement('option');
    ADDOy.text=ADDOoption;
    var ADDOx=document.getElementById(ADDOfield);
    try
     {
     ADDOx.add(ADDOy,null); // standards compliant
     }
    catch(ex)
     {
     ADDOx.add(ADDOy); // IE only
     }
//    ADDOx.id=ADDOfield+ADDOoption;
   }
  function SelectAnOption(SAOfield,SAOoption) {
    var SAOx=document.getElementById(SAOfield);
    for (var SAOloop=0;SAOloop<SAOx.length;SAOloop++)
      {
       var SAOtext=SAOx.options[SAOloop].text;
       if (SAOtext==SAOoption)
           SAOx.options[SAOloop].selected=true;
      }
    return;
  }
  function FTPAFile(FAFaction,FAFuserid,FAFpassword,FAFIPadd,FAFmfdsn,FAFpcdsn) {

    FAFd=new Date();
    FAFts=FAFd.getTime();
    var FAFnotfinishedfile="notfinishedfile"+FAFts;
    var FAFftpfile        ="ftpfile"+FAFts;
    var FAFpipefile       ="pipefile"+FAFts;
    var FAFbatfile        ="batfile"+FAFts+'.bat';

    FAFfilearray=new Array();
    FAFfilearray.push("open");
    FAFfilearray.push(FAFIPadd);
    FAFfilearray.push(FAFuserid);
    FAFfilearray.push(FAFpassword);
    FAFfilearray.push("CD data");

    if (FAFaction.toLowerCase()=='download')
        FAFfilearray.push("get "+FAFmfdsn+" "+FAFpcdsn);
    if (FAFaction.toLowerCase()=='upload')
        FAFfilearray.push("put "+FAFpcdsn+" "+FAFmfdsn);
    if (FAFaction.toLowerCase()=='dirlist')
        FAFfilearray.push("dir "+FAFmfdsn+" "+FAFpcdsn);

    FAFfilearray.push("quit");
    WriteFileFromArray(FAFftpfile,FAFfilearray);

    FAFfilearray=new Array();
    FAFfilearray.push("dummy");
    WriteFileFromArray(FAFnotfinishedfile,FAFfilearray);

    FAFfilearray=new Array();
    FAFfilearray.push('FTP.EXE -s:'+FAFftpfile+'>'+FAFpipefile);
    FAFfilearray.push('erase '+FAFftpfile);
    FAFfilearray.push('erase '+FAFnotfinishedfile);
    WriteFileFromArray(FAFbatfile,FAFfilearray);

    ExecuteShellCommands(FAFbatfile,"",FAFnotfinishedfile,0);

    FAFpipedata=ReadFileIntoArray(FAFpipefile);

    FAFfilearray=new Array();
    FAFfilearray.push('erase '+FAFpipefile);
    FAFfilearray.push('erase '+FAFbatfile);
    WriteFileFromArray(FAFbatfile,FAFfilearray);
    ExecuteShellCommands(FAFbatfile,"","",0);
    return(FAFpipedata);
  }

  function AddDropDownFromArray(ADDFAfield,ADDFAarray) {
    for (ADDFAloop=0;ADDFAloop<ADDFAarray.length;ADDFAloop++)
       {
        AddDropDownOptions(ADDFAfield,ADDFAarray[ADDFAloop]);
       }
  }
  function EmptyTheTable(tabid) {
    while (document.getElementById(tabid).rows.length>1)
      {
       document.getElementById(tabid).deleteRow(1);
      }
  }
  function AddDropDownNumberRange(ADDFAfield,ADDFAs,ADDFAe) {
    ADDFAe++;
    for (ADDFAloop=ADDFAs;ADDFAloop<ADDFAe;ADDFAloop++)
       {
        AddDropDownOptions(ADDFAfield,ADDFAloop);
       }
  }
function numbersonly(e,id){  
                                   					     //check for numeric key presses
 if (e.keyCode==9) alert ("tab key pressed");
 var unicode = e.charCode ? e.charCode : e.keyCode;                         //get the keys ascii code
 if (e.keyCode==9) alert ("tab key pressed");
 if (unicode == 8) return true;                                             //allow the backspace key to be pressed
 if (unicode==45 || unicode == 46) return true;  
 if (unicode < 48 || unicode > 57) return false;                            //reject any key less than 0 or greater then 9
 return true;                                                               //must be between 0 and 9 so accept
}
function isNumeric(thevalue,thepoint,theneg) {
 if (thevalue.indexOf('.')!=thevalue.lastIndexOf('.')) return(false);
 if (thevalue.indexOf('.')!=-1 && thepoint==0) return(false);
 if (thevalue.indexOf('-')>-1)
   {
    if (thevalue.indexOf('-')!=thevalue.lastIndexOf('-')) return(false);
    if (thevalue.indexOf('-')!=0) return(false);
   }
 if (thevalue=='') return(false);
 return(true);
}