function addCSSClass(obj, class_name)
{
  if (obj.className.indexOf(class_name) == -1)
    obj.className += ' ' + class_name;
}

function removeCSSClass(obj, class_name)
{
  if (obj.className.indexOf(class_name) != -1)
    obj.className = obj.className.replace(class_name, '');
}

function activate_input(obj)
{
  addCSSClass(obj, 'hover');
  val = obj.title;
  if (obj.value == val)
    obj.value = '';
  obj.focused = true;
}

function deactivate_input(obj)
{
  removeCSSClass(obj, 'hover');
  val = obj.title;
  if (obj.value == '')
    obj.value = val;
  obj.focused = false;
}

function mouseover_input(obj)
{
  addCSSClass(obj, 'hover');
}

function mouseout_input(obj)
{
  if (document.activeElement != obj)
    removeCSSClass(obj, 'hover');
}

function fixScroll() {
  var s = document.body.scrollTop;
  document.body.focus();
  document.body = s;
}

function numeric_KeyFilter(event) {
   var charCode = (navigator.appName == "Netscape") ? event.which : event.keyCode;

   // only numbers
   if (charCode > 31 && (charCode < 48 || charCode > 57)) return false;
   return true;
}

function basename(filepath)
{    
    var res = filepath.match(/[\/|\\]([^\\\/]+)$/);
    return (res) ? res[1] : filepath; 
}

function jumpTo(targ, selObj, restore)
{
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  //if (restore) selObj.selectedIndex=0;
}
