window.onload=focusFirstFormElement;


function addEvent( obj, type, fn ) {
    if ( obj.attachEvent ) {
        obj["e"+type+fn] = fn;
        obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
        obj.attachEvent( "on"+type, obj[type+fn] );
    } else
        obj.addEventListener( type, fn, false );
}

function removeEvent( obj, type, fn ) {
    if ( obj.detachEvent ) {
        obj.detachEvent( "on"+type, obj[type+fn] );
        obj[type+fn] = null;
    } else
        obj.removeEventListener( type, fn, false );
}

function clearSelect(targetList) {
    for (var n = targetList.length; n > 0; n-- ) {
        targetList[n]=null;
    }
}

function verifyForm(form, fields) {
    with (form) {
        for (var i = 0; i < fields.length; i++) {
            eval("var val = " + fields[i] + ".value");
            if (val == "") {
                alert("Please ensure all fields marked with a '*' are filled in.");
                return false;
            }  
            if (fields[i].match(/email/i)) {
                if (! isValidEmail(val)) {
                    alert("Please ensure all entered email addresses are valid.");
                    return false;
                }
            }
        }
    }
    return true;
}

function isValidEmail(x)
{
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(x)) return (true);
	else return (false);
}

function toggleAllPermissions (value, checkboxes) {
    for (var i=0; i<checkboxes.length; i++) {
        checkboxes[i].checked=value;
    }
}

function toggleSuperuserDisplay (value) {
    var permissionsTable = document.getElementById("permissionsTable").style;
    if (value == false) {
        permissionsTable.display = "";
    } else {
        permissionsTable.display = "none";
    }
}

function openNewsletterImageWindow (url) {
        newwindow=window.open('','name','height=300,width=550');
        var tmp = newwindow.document;
        tmp.write('<html><head><title>Newsletter image</title>');
        tmp.write('</head><body>');
        tmp.write('<p>'+url+'</p>');
        tmp.write('<p><img src=\''+url+'\'></p>');
        tmp.write('<p><a href="javascript:self.close()">Close window</a>');
        tmp.write('</body></html>');
        tmp.close();
}

function focusFirstFormElement() {
  var bFound = false;

  for (f=0; f < document.forms.length; f++)
  {
    for(i=0; i < document.forms[f].length; i++)
    {
      if (document.forms[f][i].type != "hidden")
      {
        if (document.forms[f][i].disabled != true)
        {
            // set the focus to it
            document.forms[f][i].focus();
            var bFound = true;
        }
      }
      if (bFound == true)
        break;
    }
    if (bFound == true)
      break;
  }
}

function hideShow(id) {
    var element = document.getElementById(id);
    var style = element.style;
    if (style.display == "none") {
        style.display = "";
    } else {
        style.display = "none";
    }
}
     


