   var formHasBeenSaved=0;
   
   function implodeParam(istr, param)
   {
      var xstr = istr;
      var i=0;
      var xval;
      var e;
      var dpi;
      var dpe;
      while (i>=0 && i<param.length)
      {
         e=param.indexOf('=', i);
         if (e==-1) break;
         xname=param.substr(i, e-i);
         i=e+1;
         e=param.indexOf(',', i);
         if (e==-1) 
         {
            xval=param.substr(i)
         }
         else 
         {
            xval=param.substr(i, e-i);  
         }
         dpi=0;
         do 
         {
            dpi=xstr.indexOf(xname+'=', dpi);
            if ((dpi==0) || ((dpi>0) && (xstr.substr(dpi-1,1)==','))) break;
            if (dpi>0) dpi++;
         } while (dpi!=-1);
         
         if (dpi==-1) xstr = xstr + ','+xname+'='+xval;
         else
         {
            dpi+=xname.length+1;
            dpe=xstr.indexOf(',', dpi);
            if (dpe==-1) dpe=xstr.length;
            xstr=strDelete(xstr, dpi, dpe-1, xval);
         }
         i=e;
         if (i==-1) break;
         i++;
      }
      return xstr;
   }
   
   function newWindowA(pageName, p)
   {
      var xstr = implodeParam('scrollbars=yes,toolbar=no,status=no,menubar=no,directories=no,location=no,resizable=yes,width=600,height=420', p);
      var prodWindow = window.open(pageName, 'window'+Math.round(Math.random()*1000), xstr);
      if (prodWindow) prodWindow.focus();
   }

   function newWindowB(pageName, p, winame)
   {
      var xstr = implodeParam('scrollbars=yes,toolbar=no,status=no,menubar=no,directories=no,location=no,resizable=yes,width=600,height=420', p);
      //alert(xstr);
      open(pageName, winame, xstr);
   }

   function strDelete(xstr, i0, i1, s)
   {
      return xstr.substring(0, i0)+s+xstr.substring(i1+1);
   }

   function cc(w, h)
   {
      var ktop=(screen.availHeight-h)/2;
      var kleft=(screen.availWidth-w)/2;
      return 'top='+ktop+',left='+kleft+',width='+w+',height='+h;
   }
   
