var MSGDLM = "<br>";

function hint(hint_name) {
        popUp= window.open("hint.php?showHint=" + hint_name, "hint",
                        "width=300,height=300,left=100,top=100");
}

function checkParams(f)
{
        var res = "";
        var checker = f.username.value;
        if (checker.length < 6)
            res += MSGDLM + "<b>Login</b> must be at least 6 characters.";
        if (f.first_name.value == "")
            res += MSGDLM + "Please fill the <b>First name</b> field.";
        if (f.surname.value == "")
            res += MSGDLM + "Please fill the <b>Surname</b> field.";
        if (f.email_address.value == "" || !isValidEmailAddress(f.email_address.value))
            res += MSGDLM + "<b>E-mail</b> does not seem like a valid one.";

        if (res != "")
        {
                //alert("Please correct following:\n" + res);
                showErrMessage(document.all.errMsg2, res);
                return false;
        }
}

function GroupMembersDisable() {
        form1.members.disabled = form1.group_sub.disabled;
        if (!(form1.members.disabled))
              form1.members.disabled = !(form1.group_sub.checked);
}

function GroupDisable(bool){
        form1.group_sub.disabled = (bool);
}

function FirstElementFocus(f)
{
        //f must be a form or null
        if (f == null) f = document.forms[0];

        for(var i = 0; i < f.length; i++)
        {
                var e = f[i]
                if ((e.type == "select-one") || (e.type == "text") || (e.type == "textarea") || (e.type == "radio") || (e.type == "checkbox") || (e.type == "password"))
                {
                        if (e.disabled==false && e.style.display!="none" && e.id!='')
                        {
                                e.focus();
                                break;
                        }
                }
        }
}

function isValidEmailAddress(sEmail)
{
        // the following expression must be all on one line...
        return (sEmail.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi) != null);
}

function showErrMessage (elm, msg)
{
        var res = msg;
        if (res.substring(0,MSGDLM.length) == MSGDLM) res = res.substring(MSGDLM.length);
        elm.innerHTML = res;
}