
$(function(){
    $('form').bind('submit',function(){
        $('div.Pane h2').addClass('loading');
        $('div.Pane h2 span.doing').show();
    });

    function showResetPassword(){
        $('div#iResetPassword').removeClass('hide');
        enableFieldsInDiv('div#iResetPassword');
        $('div#iLogin').addClass('hide');
        disableFieldsInDiv('div#iLogin');
        $('div#iOpenidLogin').addClass('hide');
        disableFieldsInDiv('div#iOpenidLogin');
        return false;
    }

    function showLogin(){
        $('div#iLogin').removeClass('hide');
        enableFieldsInDiv('div#iLogin');
        $('div#iResetPassword').addClass('hide');
        disableFieldsInDiv('div#iResetPassword');
        $('div#iOpenidLogin').addClass('hide');
        disableFieldsInDiv('div#iOpenidLogin');

        //  Show everything hidden when ajax login was performed
        $('#dlgResetPasswordHelp').removeClass('hide');
        $('#dlgEmailConfirmation').addClass('hide');
        $('.Field').removeClass('hide');

        $('.state-1').removeClass('hide');


        return false;
    }

    function showOpenidLogin(){
        $('div#iOpenidLogin').removeClass('hide');
        enableFieldsInDiv('div#iOpenidLogin');
        $('div#iResetPassword').addClass('hide');
        disableFieldsInDiv('div#iResetPassword');
        $('div#iLogin').addClass('hide');
        disableFieldsInDiv('div#iLogin');
        return false;
    }

    if($('input#pFromSetup').length > 0){
        $('input#j_username').val('administrator');
    }

    if($('input#pResetFail').length > 0){
        showResetPassword();
    } else if($('input#pOpenidFail').length > 0) {
        showOpenidLogin();
    } else {
        showLogin();
    }

    $('a#aResetPassword').bind('click', function(){
        showResetPassword();
    });

    $('a#aLogin').bind('click', function(){

        showLogin();
    });   

    $('a#aNormalLogin').bind('click', function(){
        showLogin();
    });

    $('a#aOpenidLogin').bind('click', function(){
        showOpenidLogin();
    });


});


function enableFieldsInDiv(oDiv){
    $('select,input,textarea',oDiv).attr('disabled','');
}

function disableFieldsInDiv(oDiv){
    $('select,input,textarea',oDiv).attr('disabled','true');
}
