// 转义HTML特殊字符
function escapeHtml(text) {
    if (text === null || text === undefined) return '';
    return String(text)
        .replace(/&/g, '&amp;')
        .replace(/</g, '&lt;')
        .replace(/>/g, '&gt;')
        .replace(/"/g, '&quot;')
        .replace(/'/g, '&#039;');
}

function login(btn) {
    var $btn = $(btn);
    var originalText = $btn.html();
    $btn.addClass('btn-loading').prop('disabled', true).html('<i class="fas fa-spinner fa-spin"></i> 登录中...');
    
    $.ajax({
        type: 'POST',
        url: 'ajax.php',
        data: $('#loginForm').serialize() + '&egn=login',
        dataType: 'json',
        success: function(data) {
            $btn.removeClass('btn-loading').prop('disabled', false).html(originalText);
            if(data.code === '登陆成功') {
                location.href = 'index.php';
            } else {
                alert(escapeHtml(data.code));
                $('#code').val('');
                if($('#code').length > 0) {
                    $('img[title="点击刷新"]').click();
                }
            }
        },
        error: function(xhr, status, error) {
            $btn.removeClass('btn-loading').prop('disabled', false).html(originalText);
            console.log('AJAX Error:', status, error);
            console.log('Response:', xhr.responseText);
            alert('操作失败，请重试\n错误: ' + error);
        }
    });
}

$(document).ready(function() {
    $('#loginForm').on('submit', function(e) {
        e.preventDefault();
        login($('button[type="button"]'));
    });
});
