    function getCookie(cookieName) {
        if (document.cookie.length > 0) {
            begin = document.cookie.indexOf(cookieName+"=");
            if (begin != -1) {
                begin += cookieName.length + 1;
                end = document.cookie.indexOf(";", begin);
                if (end == -1) end = document.cookie.length; {
                    return unescape(document.cookie.substring(begin, end));
                }
            }
        }
        return null;
    }

    function isEmpty(s) {
        return ((s == null) || (s.length == 0))
    }

    function setCookie(cookieName, value, expireDays) {
        var expiryDate = new Date ();
        // Set the cookie's expiry date to today's date + expireDays
        expiryDate.setTime(expiryDate.getTime() + (expireDays * 24 * 3600 * 1000));
        document.cookie = cookieName + "=" + escape(value) + ((expireDays == null) ? "" : "; expires=" + expiryDate.toGMTString());
    }

    function delCookie(cookieName) {
        if (getCookie(cookieName)) {
        document.cookie = cookieName + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
        }
    }

    function rememberFields(formObject, daysToRemember) {
        setCookie('email_address',formObject.email_address.value, daysToRemember);
    }

    function clearRememberedFields() {
        delCookie('email_address');
        delCookie('password');
    }

    // This gets called when the page loads (onload="" in <body> tag)
    function setFieldsToRememberedValues(formObject) {
        var emailAddress = getCookie('email_address');
        // if emailAddress cookie has a value, populate the form field with it.
        if (!isEmpty(emailAddress)) {
            formObject.email_address.value = emailAddress;
        }
        // if emailAddress cookie is set, we assume they want to keep remembering it, so set this field to checked.
        if (!isEmpty(emailAddress)) {
            formObject.remember_me.checked = true;
        }
        // if there is no emailAddress cookie set, focus the cursor in that field when the form loads
        if (isEmpty(emailAddress)) {
            formObject.email_address.focus();
        }
    }

    // This gets called when the remember_me field is toggled as well as when the form is submitted
    function handleRememberMe(formObject) {
        if (formObject.remember_me.checked) {
            // Set cookie lifetime to 30 days
            rememberFields(formObject, 30);
        } else {
            clearRememberedFields();
        }
    }
