var Ajax = {
    get: function (url, callback) {
        // XMLHttpRequest对象用于在后台与服务器交换数据
        var xhr = new XMLHttpRequest()
        xhr.open('GET', url, false)
        xhr.onreadystatechange = function () {
            // readyState == 4说明请求已完成
            if (xhr.readyState === 4) {
                if (xhr.status === 200 || xhr.status === 304) {
                    console.log(xhr.responseText)
                    callback(xhr.responseText)
                }
            }
        }
        xhr.send()
    },

    // data应为'a=a1&b=b1'这种字符串格式，在jq里如果data为对象会自动将对象转成这种字符串格式
    post: function (url, data, callback) {
        var xhr = new XMLHttpRequest()
        xhr.open('POST', url, false)
        // 添加http头，发送信息至服务器时内容编码类型
        xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
        xhr.onreadystatechange = function () {
            if (xhr.readyState === 4) {
                if (xhr.status === 200 || xhr.status === 304) {
                    // console.log(xhr.responseText);
                    callback(xhr.responseText)
                }
            }
        }
        xhr.send(data)
    }
}

;(() => {
    'use strict'

    var apkUrl = ''
    $.get('/api/properties/apk', function (data) {
        apkUrl = data.value
    })

    // Fetch all the forms we want to apply custom Bootstrap validation styles to
    const forms = document.querySelectorAll('.needs-validation')

    // Loop over them and prevent submission
    Array.from(forms).forEach((form) => {
        form.addEventListener(
            'submit',
            (event) => {
                console.log(form.checkValidity())
                // /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
                if (!form.checkValidity()) {
                    event.preventDefault()
                    event.stopPropagation()
                } else {
                    event.preventDefault()
                    event.stopPropagation()
                    Ajax.post(
                        '/api/referrer',
                        'email=' +
                            document.getElementById('email').value +
                            '&referrer=' +
                            GetQueryString('referrer'),
                        () => {}
                    )
                    window.location.href = apkUrl
                    // /api/referrer
                }

                form.classList.add('was-validated')
            },
            false
        )
    })
})()
