function submitButtonClick()
{
    var saveRMICheckbox = document.getElementsByName('saveRMI')[0];
    var theForm = document.getElementsByName('dataBean')[0];
    if (validate_patient_ed(theForm, saveRMICheckbox))
    {
        setComponentId(theForm);
        var myWindowHandle = window.open('about:blank','myWindowName');
        setTimeout('',500);
        return true;
    }
    else
    {
        return false;
    }
}

/* This function sets the requested componentId(s) for SDC Logging purposes.  */
/* This function is currently called by the anonymous onsubmit event handler. */
/* It MUST be called before the form's inline onSubmit handlers are called.   */
function setComponentId(form) {
    var sdcTags = form.getAttribute("sdcTags");
    if(sdcTags == 'undefined')
    {
        return;
    }
    if(sdcTags == null)
    {
        return;
    }
    if(sdcTags == "")
    {
        return;
    }
    var componentId = "";
    for(var i=0; i<form.elements.length; i++)
    {
        var ele = form.elements[i];
        if(ele.type == 'checkbox')
        {
            if (null != ele.name.toLowerCase().match('selectedfile'))
            {
                if(ele.checked)
                {
                    if(componentId != "")
                    {
                        componentId += ";";
                    }
                    if(ele.id.toLowerCase() == "1600CMP_C")
                    {
                        componentId += "20950215(16)";
                    }
                    else if(ele.id.toLowerCase() == "2000CMP_D.pdf")
                    {
                        componentId += "20950215(17)";
                    }
                    else if(ele.id.toLowerCase() == "2400CMP_D.pdf")
                    {
                        componentId += "20950215(18)";
                    }
                    else if(ele.id.toLowerCase() == "exercise_checklist.pdf")
                    {
                        componentId += "20950215(19)";
                    }
                    else if(ele.id.toLowerCase() == "weekly_activity.pdf")
                    {
                        componentId += "20950215(20)";
                    }
                    else if(ele.id.toLowerCase() == "planning.pdf")
                    {
                        componentId += "20950215(21)";
                    }
                    else if(ele.id.toLowerCase() == "understanding_labels.pdf")
                    {
                        componentId += "20950215(22)";
                    }
                    else if(ele.id.toLowerCase() == "glucose_tracker.pdf")
                    {
                        componentId += "20950215(23)";
                    }
                    else if(ele.id.toLowerCase() == "exercise_journal.pdf")
                    {
                        componentId += "20950215(24)";
                    }
                }
            }
        }
    }
    sdcTags = sdcTags.replace("'WT.pn_sku':''", "'WT.pn_sku':'" + componentId + "'");
    form.setAttribute("sdcTags", sdcTags);
}

/************************************************
DESCRIPTION: Validates required fields for order forms

PARAMETERS:
   form to validate

RETURNS:
   True if valid, alert window with errors if false.
*************************************************/
function validate_patient_ed(frm, saveRMI)
{
    // Set variables
    var isErr = false; // for any type of error
    var errMessage = ""; //
    var errField = ""; // if there is an error, focus on the first required form field error

    var inputs   = document.getElementsByTagName("input");
    var blah = inputs[0];
    var oneChecked = false;
    for (var i=0; i < inputs.length; i++)
    {
        var ele = inputs[i];
        if (ele.type=="checkbox")
        {   // See if this checkbox is a PDF checkbox
            if (null != ele.name.toLowerCase().match('selectedfile'))
            {
                if (ele.checked)
                {
                    oneChecked=true
                    break;

                }
            }
        }
    }

    if (!oneChecked)
    {
        isErr = true;
        errMessage = errMessage + "Please select at least one handout to view\r\n";
        if (errField.length <= 0) errField = "selectedFile";
    }

    if ((null != saveRMI) && (undefined != saveRMI) && (saveRMI.value == 'true'))
    {
        if (validateIsEmpty(firstname))
        {
            isErr = true;
            errMessage = errMessage + "Please enter First Name\r\n";
            if (errField.length <= 0) errField = "firstname";
        }

        if (validateIsEmpty(lastname))
        {
            isErr = true;
            errMessage = errMessage + "Please enter Last Name\r\n";
            if (errField.length <= 0) errField = "lastname";
        }

        if (proftype.selectedIndex == 0)
        {
            isErr = true;
            errMessage = errMessage + "Please enter a Professional Designation\r\n";
            if (errField.length <= 0) errField = "proftype";
        }

        if(validateIsEmpty(postalcode))
        {  // postalcode field is empty
            isErr = true;
            errMessage = errMessage + "Please enter ZIP Code\r\n";
            if (errField.length <= 0) errField = "postalcode";
        }
        else
        {
            postalcode = postalcode.trim(); // remove whitespace around value
            if (!validateUSZip(postalcode))
            { // Check zip code is in valid format
                isErr = true;
                errMessage = errMessage + "Please enter a valid ZIP Code in 5 digit format.\r\n";
                if (errField.length <= 0) errField = "postalcode";
            }
        }

        if (!validateIsEmpty(email))
        { // since email is not required only validate value if field is not empty
            email = email.trim(); // remove whitespace around value
            var x = email.search(/ /); // look for spaces in value
            var y = email.search(/,/); // look for commas in value
            var z = email.search(/;/); // look for semicolons in value

            if ((x != -1) || (y != -1) || (z != -1))
            { // Check for more than one email address
                isErr = true;
                errMessage = errMessage + "You are only allowed to enter one E-mail address at a time.\r\n";
                if (errField.length <= 0) errField = "email";
            }
            if (email.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1)
            { // Check for valid email address
                isErr = true;
                errMessage = errMessage + "Please enter a valid E-mail address\r\n";
                if (errField.length <= 0) errField = "email";
            }
        }
        if (validateIsEmpty(email))
        {
            isErr = true;
            errMessage = errMessage + "Please enter an email address\r\n";
            if (errField.length <= 0) errField = "email";
        }
    }

    if (isErr)
    {
        alert(errMessage);
        return false;
    }

    return true;
}

function initialize()
{   // Display Email form?
    var cookieValue=getCookie('contactInfo');
    if (null != cookieValue)
    {
        var contactInfo = cookieValue.split('||');
        var firstNameIndex=0;
        var lastNameIndex=1;
        var profTypeIndex=2;
        var organizationIndex=3;
        var organizationAddressIndex=4;
        var organizationCityIndex=5;
        var organizationStateIndex=6;
        var organizationPostalCodeIndex=7;
        var practicePhoneIndex=8;
        var practiceEmailIndex=9;
        var practiceWebSiteIndex=10;

        // If firstname is empty, populate with value from cookie
        var aField = this.document.getElementsByName('contactInfo(firstname)')[0];
        if (0 == aField.value.length)
        {
            if (contactInfo[firstNameIndex].charAt(0) == '"')
            {
                aField.value = contactInfo[firstNameIndex].substring(1);
            }
            else
            {
                aField.value = contactInfo[firstNameIndex];
            }
        }

        // If lastname is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(lastname)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[lastNameIndex];
        }

        // If professional designation is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(proftype)')[0];
        if ('Select a Designation' == aField.value)
        {
            aField.value = contactInfo[profTypeIndex];
        }

        // If practice name is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(organization)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[organizationIndex];
        }

        // If practice address is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(organization_address)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[organizationAddressIndex];
        }

        // If practice city is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(city)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[organizationCityIndex];
        }

        // If practice state is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(state)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[organizationStateIndex];
        }

        // If practice zip is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(postalcode)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[organizationPostalCodeIndex];
        }

        // If practice phone is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(office_phone)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[practicePhoneIndex];
        }

        // If practice email is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(office_email)')[0];
        if (0 == aField.value.length)
        {
            aField.value = contactInfo[practiceEmailIndex];
        }

        // If practice web site URL is empty, populate with value from cookie
        aField = this.document.getElementsByName('contactInfo(organization_url)')[0];
        if (0 == aField.value.length)
        {
            if (contactInfo[practiceWebSiteIndex].charAt(contactInfo[practiceWebSiteIndex].length-1) == '"')
            {
                aField.value = contactInfo[practiceWebSiteIndex].substring(0,contactInfo[practiceWebSiteIndex].length-1);
            }
            else
            {
                aField.value = contactInfo[practiceWebSiteIndex];
            }
        }
    }
    return false;
}

