﻿        function showconfirm() {
            debugger
            SetDefValue('lblConfirmMsg');
            SetDisplay('lblConfirmMsg', '');
            $find('ModalPopupExtenderSignup').hide();
            $find('ModalPopupExtenderConfirm').show();
            return false;
        }

        function showlogin() {
            //debugger
            SetDefValue('lblLogonMsg');
            SetDisplay('lblLogonMsg', '');
            $find('ModalPopupExtenderConfirm').hide();
            $find('ModalPopupExtenderLogin').show();
            return false;
        }

        function okJoin(sender, e) {
            SetDefValue('lblSignupMsg');
            SetDisplay('trSignupLoginIdRules', 'none');
            SetDisplay('trSignupPwdRules', 'none');
            SetDisplay('lblUserEmail', 'none');
            SetDisplay('lblPassword', 'none');
            SetDisplay('lblConfirmPassword', 'none');
            SetDisplay('lblFirstName', 'none');
            SetDisplay('lblLastName', 'none');

            if (validateSignupForm()) {
                $find('ModalPopupExtenderSignup').hide();
                __doPostBack('JoinBtn', e);
            }
            else {
                $find('ModalPopupExtenderSignup').show();
            }
        }

        function ok(sender, e) {
            //debugger
            SetDefValue('lblLogonMsg');
            SetDisplay('trLoginIdRules', 'none');
            SetDisplay('trPwdRules', 'none');

            if (validateLoginForm()) {
                $find('ModalPopupExtenderLogin').hide();
                __doPostBack('LoginBtn', e);
            }
            else {
                $find('ModalPopupExtenderLogin').show();
            }
        }

        function okConfirm(sender, e) {
            debugger
            SetDefValue('lblConfirmMsg');
            if (validateConfirmForm()) {
                $find('ModalPopupExtenderConfirm').hide();
                __doPostBack('ConfirmBtn', e);
            }
            else {
                $find('ModalPopupExtenderConfirm').show();
            }
        }

        function validateConfirmForm() {
            //debugger
            var blnPassedEdits = true;
            if (document.getElementById('txtConfirmationNumber').value == "") {
                document.getElementById('lblConfirmMsg').className = 'errorlabel';
                document.getElementById('lblConfirmMsg').innerHTML = "You must enter the confirmation number from the email you received in order to continue.";
                blnPassedEdits = false;
            }

            if (blnPassedEdits != true) return false;

            return true;
        }



        function SetDefValue(name) {
            //debugger
            var msg = ""
            if (name == 'lblSignupMsg') {
                msg = "To begin, please complete the registration form below. If you already have an account, please choose <strong>LOGIN</strong> from the home webpage. ";
            }
            if (name == 'lblLogonMsg') {
                msg = "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Please enter login ID (email) and password below. ";
            }
            if (name == 'lblConfirmMsg') {
                msg = "Please confirm your account by entering your confirmation ID below. ";
            }
            document.getElementById(name).innerHTML = msg;
        }

        function SetDisplay(name, flag) {
            document.getElementById(name).style.display = flag;
        }

        function validatePassword(pwd1, pwd2, email, ErrorLabel) {
            //debugger
            if (pwd1 != "" && pwd1 == pwd2) {
                if (pwd1 != email) {
                    if (validatePasswordRules(pwd1) != true) {
                        document.getElementById(ErrorLabel).className = 'errorlabel';
                        document.getElementById(ErrorLabel).innerHTML = document.getElementById(ErrorLabel).innerHTML + "<br>* &nbsp;&nbsp; Invalid password format used.";
                        SetDisplay('trPwdRules', '');
                        return false;
                    }
                }
                else {
                    document.getElementById(ErrorLabel).className = 'errorlabel';
                    document.getElementById(ErrorLabel).innerHTML = document.getElementById(ErrorLabel).innerHTML + "<br>* &nbsp;&nbsp; Password can not be the same as your login ID.";
                    SetDisplay('trPwdRules', '');
                    return false;
                }
            }
            else {
                document.getElementById(ErrorLabel).className = 'errorlabel';
                document.getElementById(ErrorLabel).innerHTML = document.getElementById(ErrorLabel).innerHTML + "<br>* &nbsp;&nbsp; Blank password not allowed.";
                SetDisplay('trPwdRules', '');
                return false;
            }
            SetDisplay('trPwdRules', 'none');
            return true;
        }

        function validatePasswordRules(password) {
            //debugger
            if (password.length < 8) {
                return false;
            }
            if (password.length > 15) {
                return false;
            }
            re = /[0-9]/;
            if (!re.test(password)) {
                return false;
            }
            re = /[a-z]/;
            if (!re.test(password)) {
                return false;
            }
            re = /[A-Z]/;
            if (!re.test(password)) {
                return false;
            }
            return true;
        }

        function validateLoginForm() {
            var blnPassedEdits = true;
            if (validateEmail('loginId', 'lblLogonMsg') != true) {
                SetDisplay('trLoginIdRules', '');
                blnPassedEdits = false;
            }
            if (validatePassword(document.getElementById('pwd').value, document.getElementById('pwd').value, document.getElementById('loginId').value, 'lblLogonMsg') != true) {
                SetDisplay('trPwdRules', '');
                blnPassedEdits = false;
            }

            if (blnPassedEdits != true) return false;

            SetDisplay('trLoginIdRules', 'none');
            SetDisplay('trPwdRules', 'none');
            return true;
        }

        function validateSignupForm() {
            //debugger
            var blnPassedEdits = true;
            if (validateEmail('txtUserEmail', 'lblSignupMsg') != true) {
                SetDisplay('trSignupLoginIdRules', '');
                SetDisplay('lblUserEmail', '');
                blnPassedEdits = false;
            }
            if (validatePassword(document.getElementById('txtPassword').value, document.getElementById('txtConfirmPassword').value, document.getElementById('txtUserEmail').value, 'lblSignupMsg') != true) {
                SetDisplay('trSignupPwdRules', '');
                SetDisplay('lblPassword', '');
                SetDisplay('lblConfirmPassword', '');
                blnPassedEdits = false;
            }
            if (document.getElementById('txtFirstName').value == "") {
                SetDisplay('lblFirstName', '');
                document.getElementById('lblSignupMsg').className = 'errorlabel';
                document.getElementById('lblSignupMsg').innerHTML = document.getElementById('lblSignupMsg').innerHTML + "<br>* &nbsp;&nbsp; Blank First Name is not allowed.";
                blnPassedEdits = false;
            }
            if (document.getElementById('txtLastName').value == "") {
                SetDisplay('lblLastName', '');
                document.getElementById('lblSignupMsg').className = 'errorlabel';
                document.getElementById('lblSignupMsg').innerHTML = document.getElementById('lblSignupMsg').innerHTML + "<br>* &nbsp;&nbsp; Blank Last Name is not allowed.";
                blnPassedEdits = false;
            }

            if (blnPassedEdits != true) return false;

            SetDisplay('lblUserEmail', 'none');
            SetDisplay('lblPassword', 'none');
            SetDisplay('lblConfirmPassword', 'none');
            SetDisplay('lblFirstName', 'none');
            SetDisplay('lblLastName', 'none');
            SetDisplay('trSignupLoginIdRules', 'none');
            SetDisplay('trSignupPwdRules', 'none');
            return true;
        }

        function validateEmail(name, ErrorLabel) {
            //debugger
            if (document.getElementById(name).value == "") {
                document.getElementById(ErrorLabel).className = 'errorlabel';
                document.getElementById(ErrorLabel).innerHTML = " <br>* &nbsp;&nbsp; Login ID must be a valid email address.";
                return false;
            }
            var btn = document.getElementById(name);
            var emailPat = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
            var emailid = document.getElementById(name).value;
            var matchArray = emailid.match(emailPat);
            if (matchArray == null) {
                document.getElementById(ErrorLabel).className = 'errorlabel';
                document.getElementById(ErrorLabel).innerHTML = " <br>* &nbsp;&nbsp; Invalid email address format entered for Login ID. ";
                return false;
            }
            document.getElementById(ErrorLabel).className = 'infolabel';
            return true;
        }

        function OnKeyPress(args) {
            if (args.keyCode == Sys.UI.Key.esc) {
                $find("ModalPopupExtenderLogin").hide();
            }
        }
        function body_onkeydown() {
            if (event.keyCode == 13 || event.keyCode == 27) {
                var _defaultButtonName = getDefautButtonName(event.keyCode == 13 ? "submitButton" : "cancelButton");
                var frm = document.forms[0];
                if (frm && document.all(_defaultButtonName)) {
                    document.all(_defaultButtonName).click();
                }
            }
        }

        function getDefautButtonName(className) {
            var _defaultButtonName = "";
            var children = document.getElementsByTagName("input");
            for (var i = 0; i < children.length; i++) {
                var child = children[i];
                var btnAction = child.buttonAction;
                if (btnAction == className) {
                    _defaultButtonName = child.id;
                    break;
                }
            }
            return _defaultButtonName;
        }

