

function edit_self_params(str, params)
{
  var strnew = str;
  var mhash = "";
  
  if (strnew.lastIndexOf("#") != -1)
  {
    var i1 = strnew.lastIndexOf("#");
    mhash = strnew.substring(i1, strnew.length);
    strnew = strnew.substring(0, i1);
  }
  
  for (var i = 0; i < params.length; i += 2)
  { 
    var beg1 = strnew.indexOf("?" + params[i] + "=");
    var beg2 = strnew.indexOf("&" + params[i] + "=");
    var beg =  Math.max(beg1, beg2);
    
    if (beg == -1)
    {
      if (strnew.indexOf("?") == -1)
        strnew += "?" + params[i] + "=" + params[i + 1];
      else
        strnew += "&" + params[i] + "=" + params[i + 1];
      continue;
    }
    
    beg++;
    
    var end = strnew.indexOf('&', beg);
    if (end < 0)
      end = strnew.length;
  
    strnew = strnew.substring(0, beg)
             + params[i] + "=" + params[ i + 1]
             + strnew.substring(end, strnew.length);
  }
  
  strnew += mhash;
  
  return strnew;
}


function change_self_params(params)
{
  var strnew = edit_self_params(self.location.href, params)
  
  if (strnew != self.location.href
      && strnew != (self.location.href + "#"))
  { 
    self.location = strnew;
    return true;
  }
  
  return false;
}


var uk_chsel = false;
function change_selection()
{
  if (uk_chsel) return;
  var userDate = document.mainform.dateinp;
  var dfltDate = document.mainform.datedef;
  user_date_correct(userDate, dfltDate.value);
  var cDate = user_date_iso(userDate.value);
  uk_chsel = change_self_params(["date", cDate]);
}

if (!document.all)
{
  document.captureEvents(Event.KEYUP);
}

function presskey(event)
{
  if (document.all)
  { 
    if (window.event.keyCode == '13')
      change_selection();
  }
  else
  {
    if (event.which == '13')
      change_selection();
  }
  return false;
}

function print_self()
{
  var beg1 = self.location.search.indexOf("?printv=yes");
  var beg2 = self.location.search.indexOf("&printv=yes");
  var beg =  Math.max(beg1, beg2);
  if (beg == -1) return;
  
  self.focus();
  if(document.all && navigator.appVersion.substring(22,23) == 4)
  {
    if (ie4print) ie4print.ExecWB(6,1);
    if (ie4print) ie4print.outerHTML = '';
  }
  else self.print();
}

function ukprintv(loc, iw)
{
  var newloc = edit_self_params(self.location.href, ["printv", "yes"]);
  var popupwin = window.open(newloc, loc + "print", 'height=' + iw + ',width=' + iw + ',scrollbars=yes,location=0,menubar=0,resizable=1,status=0,toolbar=0');
  popupwin.focus();
}
