var stat = function(html){ $('user-login').empty().set('html', html) };
var login_holder = null;
var init_form = function() {
    $('login_form').addEvent('submit', on_std_login);
};
// TODO: unify these two functions somehow
var on_fb_login = function() {
    stat('Verifying login...');
    new Request.JSON({
        url:'login.php',
        data: {j:1, m:'fb'},
        onSuccess: function(json, t) {
            if (!json) return stat(t);
            if (json.s) {
                stat('Welcome back, <b>'+json.n+'</b>!<br>You\'re logged in with Facebook');
                window.location.reload(true);
            } else if (json.m == 'e') {
                stat("I'm sorry, there was some kind of error...");
            } else if (json.m == 'u') {
                stat('Welcome, ' + json.n + '!<br>You may <a href="#">update your profile</a> if you like.');
            }
        }
    }).post();
};

var on_std_login = function(e) {
    new Event(e).stop();
    $('login-msg').set('html', '').removeClass('error');
    login_holder = $('user-login').clone(true, true);
    var user = $('user').value;
    var pass = $('pass').value;    
    var auto = $('auto').checked;
    stat('Verifying login...');
    new Request.JSON({
        url: 'login.php',
        data: {j:1, m:'std', u:user, p:pass, a:auto},
        onSuccess: function(json, t) {
            if (!json) return stat('Error:' + t);
            if (json.s) {
                stat('Welcome back! Reloading page...');
                window.location.reload(true);
            } else if (json.m == 'r') {
                stat('Complete registration');
            } else {
                login_holder.replaces( $('user-login') );
                $('login-msg').set('html', json.e).addClass('error');
                init_form();
            }
        }
    }).post();
}

window.addEvent('domready', init_form);
