$(function() {
    $('#passwordResetRequestsubmit').click(function (e) {
        //null判定
        if ($('#txtSendData').val() == null || $('#txtSendData').val() == '' || $('#txtSendData').val() == undefined) {
            $('#txtSendData_message').text("メールアドレスまたはお客様IDを入力してください。");
            return false;
            //お客様ID判定
        }else if ($('#txtSendData').val().match(/^[0-9a-zA-Z]*$/)) {
            if ($('#txtSendData').val().length == 11) {
                //戻り値ナシで処理が完了になる
                idCheck();
            } else {
                $('#txtSendData_message').text("メールアドレスまたはお客様IDを正しく入力してください。");
                return false;
            }
            //それ以外はメールアドレスとみなす
        }else {
            if ($('#txtSendData').val().match(/^[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]+$/)) {
                //戻り値ナシで処理が完了になる
                mailCheck();
            } else {
                $('#txtSendData_message').text("メールアドレスまたはお客様IDを正しく入力してください。");
                return false;
            }
        }

        //お客様IDが入力された場合の確認処理
        function idCheck() {
            //cookie初期化
            document.cookie = 'api_sid=; max-age=0'

            var hostUrlat = global_psa_api_domain + '/account/resetpass';
            $.ajax({
                url: hostUrlat,
                type: 'POST',
                crossDomain: 'true',
                contentType: 'application/json',
                dataType: 'json',
                data: JSON.stringify({'type': 'user_id', 'param1': $('#txtSendData').val()}),
                beforeSend: function (jqXHR, set) {
                    // return;
                }
            }).done(function (data, textStatus, jqXHR) {
                if (jqXHR.status === 200) {
                    var sessionId = data.session_id;
                    document.cookie = "api_sid=" + sessionId;
                    document.location.href = "passwordReset";
                } else {
                    //共通エラー画面に遷移
                    document.location.href = "error";
                }
            }).fail(function (jqXHR, textStatus, errorThrown) {
                //404が返ってきたとしてもエラー画面を表示しない
                if (jqXHR.status === 404) {
                    document.location.href = "passwordReset";
                }else {
                    //共通エラー画面に遷移
                    document.location.href = "error";
                }
            });
        }

        //メールアドレスが入力された場合の確認処理
        function mailCheck() {
            //cookie初期化
            document.cookie = 'api_sid=; max-age=0'

            var hostUrlat = global_psa_api_domain + '/account/resetpass';
            $.ajax({
                url: hostUrlat,
                type: 'POST',
                crossDomain: 'true',
                contentType: 'application/json',
                dataType: 'json',
                data: JSON.stringify({'type': 'email', 'param1': $('#txtSendData').val()}),
                beforeSend: function (jqXHR, set) {
                    // return;
                }
            }).done(function (data, textStatus, jqXHR) {
                if (jqXHR.status === 200) {
                    var sessionId = data.session_id;
                    document.cookie = "api_sid=" + sessionId;
                    document.location.href = "passwordReset";
                } else {
                    //共通エラー画面に遷移
                    document.location.href = "error";
                }
            }).fail(function (jqXHR, textStatus, errorThrown) {
                //404が返ってきたとしてもエラー画面を表示しない
                if (jqXHR.status === 404) {
                    document.location.href = "passwordReset";
                }else{
                    //共通エラー画面に遷移
                    document.location.href = "error";
                }
            });
        }
    });
});
