

function confirmDeleteUpload(what) 
{
  if (!what) what = 'file';

  if (confirm('Are you sure you want to delete this '+what+'?')) return true;

  return false;
}



/*

checked = true, false

*/

function selectAll(formObject, checked)
{
   for (var i=0; i < formObject.elements.length; i++)
   {
       if (formObject.elements[i].name == 'fmRecKey[]') formObject.elements[i].checked = checked;
   }
}

/*
 
Opens a noname window (in fact it has a name, but it is just a random string)
Example: <a href="javascript:newWindow('?do=user_details', center_on_screen(450,450));">Add new</a>

*/

function newWindow(url, windowFeatures)
{
    var xstr = implodeParam('scrollbars=yes,toolbar=no,status=no,menubar=no,directories=no,location=no,resizable=yes,width=600,height=420', windowFeatures);
    var prodWindow = window.open(url, 'window'+Math.round(Math.random()*1000), xstr);
    if (prodWindow) prodWindow.focus();
}


/*
 
Opens a window with specified <windowName>
Example: <a href="javascript:newWindow('?do=user_details', 'user_details', center_on_screen(450,450));">Add new</a>

*/

function newWindowName(url, windowName, windowFeatures)
{
    var xstr = implodeParam('scrollbars=yes,toolbar=no,status=no,menubar=no,directories=no,location=no,resizable=yes,width=600,height=420', windowFeatures);
    open(url, windowName, xstr);
}

/*


*/

function deleteRecords(formObject)
{
    if (confirm('Are you sure that you want to delete these records?')) 
    {
        formObject.fmFormMode.value = 'delete';    
        formObject.submit();
    }  
}


function searchRecords(formObject)
{
    formObject.fmFormMode.value = 'search';    
    formObject.submit();
}


function switchSubmit(formObject)
{
  if (formObject.fmFormSubmissionEnabled.checked)
  {
      formObject.fmFormSubmit.disabled = false;
      formObject.fmFormSubmit.style.backgroundColor = 'D4D0C8';
  }
  else
  {
      formObject.fmFormSubmit.disabled = true;
      formObject.fmFormSubmit.style.backgroundColor = 'FF8888';
  }
}


function submitForm(formObject)
{
  if (formObject.fmFormSubmissionEnabled.checked)
  {
      return true;
  }
  else
  {
      return false;
  }
}


/* ============================================================================== */

function center_on_screen(width, height)
{
   var ktop=(screen.availHeight-height)/2;
   var kleft=(screen.availWidth-width)/2;
   return 'top='+ktop+',left='+kleft+',width='+width+',height='+height;
}


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 strDelete(xstr, i0, i1, s)
{
   return xstr.substring(0, i0)+s+xstr.substring(i1+1);
}

