﻿//操作状态提示信息 v1.1
//type: loading, warning, info, error
function message(text, type, fade, e) {
    if (type == undefined) type = 'info';
    if (fade == undefined) fade = 0;
    var msg = $('<div class="msg ' + type + 'Msg">' + text + '</div>').appendTo('body');
    if (e != undefined) msg.css({ 'left': $(window).scrollLeft() + e.clientX, 'top': $(window).scrollTop() + e.clientY });
    else msg.css({ 'left': ($(window).width() - msg.width()) / 2 });
    msg.show();
    if (fade != 0) {
        msg.fadeOut(fade);
    }
    return msg;
}

function errorMessage(text, fade, e, referrerPage) {
    if (fade == undefined) fade = 0;
    var msg = $('<div class="msg errorMsg">' + text + '</div>').appendTo('body');
    if (e != undefined) {
        if(referrerPage == 'masterpage') msg.css({ 'left': $(window).scrollLeft() + e.offset().left, 'top': $(window).scrollTop() + e.offset().top + e.height() + 5 });
        else msg.css({ 'left': $(window).scrollLeft() + e.offset().left + $('#username').width() + 10, 'top': $(window).scrollTop() + e.offset().top - 2 });
        }
    else msg.css({ 'left': ($(window).width() - msg.width()) / 2 });
    msg.show();
    if (fade != 0) {
        msg.fadeOut(fade);
    }
    return msg;
}

function ajaxLoading(text, e) {
    var msg = $('<div class="msg indicatorMsg">' + text + '</div>').appendTo('body');
    if (e != undefined) msg.css({ 'left': $(window).scrollLeft() + e.offset().left, 'top': $(window).scrollTop()});
    else msg.css({ 'left': ($(window).width() - msg.width()) / 2 });
    msg.show();
    return msg;
}

function login(referrerPage) {
    if($.trim($('#username').val()) == '') {
        errorMessage('请输入用户名', 5000, $('#username'), referrerPage);
        $('#username').focus();
        return false;
    }
    if($.trim($('#password').val()) == '') {
        errorMessage('请输入密码', 5000, $('#password'), referrerPage);
        $('#password').focus();
        return false;
    }
    if($.trim($('#vcode').val()) == '') {
        errorMessage('请输入验证码', 5000, $('#vcode'), referrerPage);
        $('#vcode').focus();
        return false;
    }
    var hash = 'u='+ encodeURIComponent($('#username').val()) + '&p=' + $('#password').val() + '&Vcode=' + $('#vcode').val();
    var returnurl = '', index = location.href.indexOf('ReturnUrl=');
            if (index > -1) returnurl = location.href.substr(index + 10);
    $('#password').val('');
    $('#vcode').val('');
    $.ajax({
        type: 'GET', cache: false,
        url: '/Login.aspx?' + hash,
        success: function (html) {
            if(html.indexOf('success') > -1) {
                if(returnurl != '')location.href = decodeURIComponent(returnurl);
                $('.loginUsername').text(html.substr(8));
                $('.ajaxLoading').hide();
                $('#login>div:last').show();
                $('#login2>div:last').show();
                $('#username').val('');
            }
            else {
                $('.ajaxLoading').hide();
                $('#login>div:first').show();
                $('#login2>div:first').show();
                var timestamp = (new Date()).valueOf();
                $('.vcode>img').attr('src','/ValidateCode.aspx?stamp=' + timestamp);
                errorMessage(html, 5000, $('#password'), referrerPage);
                $('#password').focus();
            }
        },
        error: function() {
            $('.ajaxLoading').hide();
            $('#login>div:first').show();
            $('#login2>div:first').show();
            errorMessage('连接超时，请重试…', 5000, $('#password'), referrerPage);
            var timestamp = (new Date()).valueOf();
            $('.vcode>img').attr('src','/ValidateCode.aspx?stamp=' + timestamp);
            $('#password').focus();
        }
    });
}
