
function on_UserLogout() {

        top.location.replace( '/' );

} // function on_UserLogout()


function on_UserLogin() {

    location.href = location.href;

} // function on_UserLogin()


function _trim( str ) {

        var mod = String( str ).replace( /(^\s+)/, '' );
        return String( mod ).replace( /(\s+$)/, '' );

} // function _trim()


function doLogin() {

    try {
        document.getElementById("form_login").style.display = "none";
        document.getElementById("form_remind").style.display = "none";
        document.getElementById("error_login").style.display = "none";
        document.getElementById("form_logout").style.display = "block";

        if( window.on_UserLogin ) {
            on_UserLogin();
        }

    } catch (e) {
    }

} // function doLogin()


function doLoginFailed() {

    try {
        document.getElementById("error_login").style.display = "block";

    } catch (e) {
    }

} //function doLoginFailed()


function doLogout() {

    try {
        document.getElementById("form_logout").style.display = "none";
        document.getElementById("form_remind").style.display = "none";
        document.getElementById("form_login").style.display = "block";
        if (window.on_UserLogout) {
                        on_UserLogout();
        }

    } catch (e) {
    }

} // function doLogout()


function doRemind () {

    try {
        document.getElementById("error_remind").style.display = "none";
        document.getElementById("form_remind").style.display = "none";
        document.getElementById("form_remind_ok").style.display = "block";
        doSendRemind_active = false;
    } catch (e) {
    }

} // function doRemind()


var doSendRemind_active = false;


function doSendRemind () {

    try {

        f_login_remind_submit();

    } catch (e) {
    }

} // function doSendRemind()


function doRemindFailed() {

    try {

        document.getElementById("error_remind").style.display = "block";

        document.getElementById("remind_btn_cancel").disabled = false;
        document.getElementById("remind_fld_login" ).disabled = false;
        document.getElementById("remind_btn_send"  ).disabled = false;

        doSendRemind_active = false;

    } catch (e) {
    }

} // function doRemindFailed()


function showRemindPwd() {

    try {
        var f_remind = document.getElementById("form_remind");
        var f_login  = document.getElementById("form_login");
        document.getElementById("error_remind").style.display = "none";
        f_remind.style.width   = f_login.scrollWidth - 2;
        f_login.style.display  = "none";
        f_remind.style.display = "block";
        document.getElementById("remind_btn_cancel").disabled = false;
        document.getElementById("remind_fld_login" ).disabled = false;
        document.getElementById("remind_btn_send"  ).disabled = false;
        document.f_login_remind.login.value = '';
    } catch (e) {
    }

} // function showRemindPwd()


function showLogin() {

    try {
        document.getElementById("form_remind").style.display = "none";
        document.getElementById("form_remind_ok").style.display = "none";
        document.getElementById("form_login").style.display = "block";

    } catch (e) {
    }

} // function showLogin()


function catchEnterKey( ev, el, chk_arr ) {

    char = ev.keyCode == 0 ? ev.charCode : ev.keyCode;
    if( char == 13 ) {
        result = true;
        for( i in chk_arr ) {
            if( _trim( el.form.elements[chk_arr[i]].value ) == '' ) result = false;
        }
        if( result ) {
            eval( el.form.name + '_submit();' );
        }
    }

} // function catchEnterKey()


function f_login_submit() {
    document.f_login_sec.pass.value = sha1Hash(
        document.f_login.pass.value
    );

    document.f_login_sec.login.value = sha1Hash(
        _trim(document.f_login.login.value.toLowerCase())
    );
    
    document.f_login_sec.remember_me.value = document.f_login.remember_me.checked ? 1 : 0;

    document.f_login_sec.submit();

} // function f_login_submit()


function f_login_remind_submit() {

    document.f_login_remind.hidden_login.value = document.getElementById("remind_fld_login" ).value;
    document.getElementById("remind_btn_cancel").disabled = true;
    document.getElementById("remind_fld_login" ).disabled = true;
    document.getElementById("remind_btn_send"  ).disabled = true;
    document.f_login_remind.submit();

} // function f_login_remind_submit()