winPopUp = function(linkRef, options) {
  if (!window.focus) return true;

  var default_options = {
    width: 600,
    height: 600,
    toolbar: 0,
    scrollbars: 1,
    location: 1,
    statusbar: 1,
    menubar: 0,
    resizable: 1
  };

  options = options || {};
  for (var option in default_options) {
    if ((! (option in options)) || options[option] === null) {
      options[option] = default_options[option];
    }
  }

  var href = typeof linkRef == 'string' ? linkRef : linkRef.href;
  var target = options.target || linkRef.target || 'somepopupwin';
  delete options['target'];

  var optionString = '';
  for (var option in options) {
    if (optionString != '') optionString += ',';
    optionString += option + '=' +
      (options[option] === true ? '1' :
         (options[option] === false ? '0' : options[option]));
  }

  var newWin = window.open(href, target, optionString);
  newWin.focus();
  
  return false;
}