$(document).ready(function () {

    /**
     * 가입 처리
     */
    $('form#join-form').submit( function () {
        var member_id = $("form#join-form [name='member_id']").val();

        if (!chkValidate('id', $("form#join-form [name='member_id']"), true)) {
            return false;
        }
        if (!chkValidate('pw', $("form#join-form [name='member_pw']"), true)) {
            return false;
        }
        if (!chkValidate('pw_confirm', $("form#join-form [name='member_pw_confirm']"), true)) {
            return false;
        }
        if (!chkValidate('email', $("form#join-form [name='member_email']"), true)) {
            return false;
        }

        var require_check = true;
        $(this).find('input').each(function () {
            if ($(this).data('required') === true) {
                if ($(this).attr('type') == 'checkbox' || $(this).attr('type') == 'radio') {
                    if (!$(this).prop('checked')) {
                        alert($(this).next('em').eq(0).text() + "\n" +window.i18n.all.join.MJ0029.message);
                        require_check = false;
                        return false;
                    } else {
                        showMsg($(this), null, 'success');
                    }
                } else {
                    if (!$(this).val()) {
                        let inputInfo = $(this).attr('name');
                        if(inputInfo === 'member_name'){
                            showMsg($(this), window.i18n.all.join.MJ0040.message, 'warn');
                        }
                        else if(inputInfo === 'member_phone'){
                            showMsg($(this), window.i18n.all.join.MJ0041.message, 'warn');
                        } else {
                            showMsg($(this), window.i18n.all.join.MJ0028.message, 'warn');
                        }                        
                        
                        $(this).focus();
                        require_check = false;
                        return false;
                    } else {
                        showMsg($(this), null, 'success');
                    }
                }
            }
        });
        if (!require_check) {
            return false;
        }

        $.post('/members/join', $('form#join-form').serialize(), function (res) {
            if (res.result) {
                if(Object.keys(res.datas).includes('sign_up_method')) {
                    googleAnalyticsEvent('sign_up', { method: res.datas.sign_up_method });
                }                
                alert(res.result_msg);
                location.replace('/members/join/completed?id=' + member_id);
            } else {
                if(res.error === 'regit_certified' || res.error === 'need_certified') {
                    alert(window.i18n.all.common.need_certified.message);
                    location.reload();
                }else{
                    alert(res.result_msg);
                }
            }

            return false;
        });

        return false;
    });

    /**
     * Blur 시 유효성 체크가 필요한 항목들 처리
     */
    $("form#join-form [name='member_pw']").on('blur', function () {
        chkValidate('pw', $(this));
    });
    $("form#join-form [name='member_pw_confirm']").on('blur', function () {
        chkValidate('pw_confirm', $(this));
    });
});
