
// form validation scripts
// requires functions in validation.js

function checkPassword(f)
{
    var formok = true;
    var errmsg = "";

    if (f.newpass1.value == "" || f.newpass2.value == "")
    {
        formok = false;
        errmsg += "- Both password fields must be completed\n";
    }
    else
    {
        if (f.newpass1.value == f.newpass2.value)
        {
            if (!isValidPassword(f.newpass1.value,8))
            {
                formok = false;
                errmsg += "- Password is not a valid password\n";
            }
        }
        else
        {
            formok = false;
            errmsg += "- Passwords do not match\n";
        }
    }

    if (!formok)
    {
        errmsg += "\nPlease try again";
        alert(errmsg);
    }

    return formok;
}

function checkContact(f)
{
    // checks contact form
    var formok = true;
    var errmsg = "The following errors have been found:\n\n";

    if (f.contactname.value == "")
    {
        formok = false;
        errmsg += "- Name has not been completed\n";
    }

    if (f.email.value == "")
    {
        formok = false;
        errmsg += "- E-mail has not been completed\n";
    }
    else if (!validateEmail(f.email.value))
    {
        formok = false;
        errmsg += "- E-mail does not appear to be valid\n";
    }

    if (f.query.value == "")
    {
        formok = false;
        errmsg += "- Query/enquiry has not been completed\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkMemberPassword(f)
{
    // checks form for new member password
    var formok = true;
    var errmsg = "New password must be at least 8 characters and be a aplhanumeric.\n\nPlease try again.";

    if (!isValidPassword(f.newpassword.value, 8))
    {
        formok = false;
    }

    if (!formok)
    {
        alert(errmsg);
    }

    return formok;
}

function checkFeatureBox(f)
{
    // checks about form
    var formok = true;
    var errmsg = "";

    if (f.content.value == "")
    {
        formok = false;
        errmsg += "Text content is empty\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkAbout(f)
{
    // checks about form
    var formok = true;
    var errmsg = "";

    if (f.abouttitle.value == "")
    {
        formok = false;
        errmsg += "- Title has not been completed\n";
    }

    if (f.content.value == "")
    {
        formok = false;
        errmsg += "- Content has not been completed\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkCaseStudy(f, checkfile)
{
    // checks case study form
    var formok = true;
    var errmsg = "";

    if (f.casetitle.value == "")
    {
        formok = false;
        errmsg += "- Title has not been completed\n";
    }

    if (f.content.value == "")
    {
        formok = false;
        errmsg += "- Content has not been completed\n";
    }

    if (checkfile)
    {
        if (f.pdf.value != "")
        {
            if (filenameHasSpaces(f.pdf.value))
            {
                formok = false;
                errmsg += "- PDF filename must not contain spaces\n";
            }
            if (!validFileType(f.pdf.value, "pdf"))
            {
                formok = false;
                errmsg += "- File does not appear to be in PDF format\n";
            }
        }
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkDocument(f, checkfile)
{
    // checks document form
    var formok = true;
    var errmsg = "";

    if (f.doctitle.value == "")
    {
        formok = false;
        errmsg += "- Title has not been completed\n";
    }

    if (f.doctype.value == "")
    {
        formok = false;
        errmsg += "- Document type has not been selected\n";
    }

    if (f.description.value == "")
    {
        formok = false;
        errmsg += "- Description has not been completed\n";
    }

    if (checkfile)
    {
        if (f.filename.value != "")
        {
            if (filenameHasSpaces(f.filename.value))
            {
                formok = false;
                errmsg += "- Filename must not contain spaces\n";
            }
            if (!validFileType(f.filename.value, "doc,txt,xls,pdf,ppt,rtf"))
            {
                formok = false;
                errmsg += "- File is not a valid file type\n";
            }
        }
        else
        {
            formok = false;
            errmsg += "- Document has not been selected\n";
        }
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkHome(f)
{
    // checks home form
    var formok = true;
    var errmsg = "";

    if (f.hometitle.value == "")
    {
        formok = false;
        errmsg += "- Title has not been completed\n";
    }

    if (f.content.value == "")
    {
        formok = false;
        errmsg += "- Content has not been completed\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkLink(f)
{
    // checks link form
    var formok = true;
    var errmsg = "";

    if (f.linktitle.value == "")
    {
        formok = false;
        errmsg += "- Title has not been completed\n";
    }

    if (f.description.value == "")
    {
        formok = false;
        errmsg += "- Description has not been completed\n";
    }

    if (f.url.value == "")
    {
        formok = false;
        errmsg += "- URL has not been completed\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkNews(f)
{
    // checks news form
    var formok = true;
    var errmsg = "";

    if (f.newstitle.value == "")
    {
        formok = false;
        errmsg += "- Title has not been completed\n";
    }

    if (f.newstext.value == "")
    {
        formok = false;
        errmsg += "- News text has not been completed\n";
    }

    if (f.day.value == "" || f.month.value == "" || f.year.value == "")
    {
        formok = false;
        errmsg += "- All date fields must be selected\n";
    }
    else if (!isValidDate(f.day.value, f.month.value, f.year.value))
    {
        formok = false;
        errmsg += "- Date entered is not a valid date\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkPublication(f)
{
    // checks publication form
    var formok = true;
    var errmsg = "";

    if (f.pubtitle.value == "")
    {
        formok = false;
        errmsg += "- Title has not been completed\n";
    }

    if (f.description.value == "")
    {
        formok = false;
        errmsg += "- Description has not been completed\n";
    }

    if (f.url.value == "")
    {
        formok = false;
        errmsg += "- URL has not been completed\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}

function checkMemberLogin(f)
{
    // checks member login form
    var formok = true;
    var errmsg = "";

    if (f.user.value == "")
    {
        formok = false;
        errmsg += "- Username has not been completed\n";
    }

    if (f.pass.value == "")
    {
        formok = false;
        errmsg += "- Password has not been completed\n";
    }

    if (!formok)
    {
        errmsg += "\nPlease try again.";
        alert(errmsg);
    }

    return formok;
}
