﻿var xmlHttp0 = false;
/***/
try {
    xmlHttp0 = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
    try {
        xmlHttp0 = new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch (e2) {
        xmlHttp0 = false;
    }
}
if (typeof XMLHttpRequest != 'undefined' && !xmlHttp0) {
    xmlHttp0 = new XMLHttpRequest();
}



/**********系统登录开始*******/
 function CheckLogin(pageUrl,bbsurl)
  {
    var nologin=document.getElementById("nologin");
    var _username =document.getElementById("username").value;
    var _password = document.getElementById("password").value;
    var _inputCode = document.getElementById("keycodes").value;

    //输入性判断
    var flag = CheckInput(_username, _password, _inputCode);
    var codes = false;
    if (flag) {
        //验证码判断
        codes = validate(_inputCode);
       /*2010.4.24修改（因为+号被自动转成空格）*/
        /*对用户名进行编码*/
        _username=encodeURIComponent(_username);
        /*对密码进行编码*/
        _password=encodeURIComponent(_password);
        if (codes) {
            var nologinHtml = nologin.innerHTML;
            nologin.innerHTML = "<img src=\"/templates/grass/images/loadinglogin.gif\" border=\"0\">";
            var _appid = "KS0301";
            var _cookiesid = "FZDnt";
            var _style = "login";
            var loginstate;
            var loginstr = document.createElement("script");
            loginstr.setAttribute('type', 'text/javascript');
            var logurl = pageUrl + "/SSO/logininterface.aspx?username=" + _username + "&password=" + _password + "&style=" + _style + "&cookieID=" + _cookiesid + "&appID=" + _appid;
            logurl = logurl + "&random=" + Math.random();
            loginstr.setAttribute('src', logurl);
            document.getElementsByTagName("head")[0].appendChild(loginstr);
            if (document.getElementsByTagName("html")) {
                loginstr.onload = loginstr.onreadystatechange = function() {
                var state = "";
                if (document.all != undefined) {
                    state = loginstr.readyState;  // firefox里不兼容readyState
                }
                if (state == "" || state == "loaded" || state == "interactive" || state == "complete") {
                    if (loginresult.toLowerCase() == "false") {
                        alert("登录失败原因可能是：\n\n" + message.ReplaceAll("<br>", "\n"));
                        nologin.style.display = '';
                        nologin.innerHTML = nologinHtml;
                    }
                    else if (loginresult.toLowerCase() == "securitykeyerr") {
                        alert("安全检验码出错，请重新登录！");
                        nologin.style.display = '';
                        nologin.innerHTML = nologinHtml;
                    }
                    else if (loginresult.toLowerCase() == "success") {
                        nologin.style.display = '';
                         //已登录
                        SubjectListenerLogin(bbsurl);
                       
                       
                    }
                }

                }
            }

        }
    }
}
/*******登录输入项目检查**************/
function CheckInput(username, password, codes) {
    if (username.trim() == "") {
        alert("请输入用户名!");
        return false;
    }
    else if (checkLen(username.trim()) > 20) {
        alert("用户名已超过最大长度！");
        return false;
    }
    if (password.trim() == "") {
        alert("请输入密码！");
        return false;
    }
    else if (checkLen(password.trim()) > 20) {
        alert("密码已超过最大长度！");
        return false;
    }
    if (codes.trim() == "") {
        alert("请输入验证码！");
        return false;
    }
    else if (checkLen(codes.trim()) > 4) {
        alert("验证码已超过最大长度！");
        return false;
    }
    return true;
}
/******登录输入项目检查结束*************/
/****去空格函数*********/
String.prototype.trim = function() {
    return this.replace(/(^\s*)|(\s*$)/g, "");
}

/*********检查输入的字符的长度***********/
function checkLen(str) {
    var x = 0;
    for (i = 0; i < str.length; i++) {
        if (str.charCodeAt(i) > 128) {
            x = x + 2;
        } else {
            x = x + 1;
        }
    }
    return x;
}
/****************/
/*****替换字符串在所有相同的字符*********/
String.prototype.ReplaceAll = function(stringToFind, stringToReplace) {
    var result = this;
    var index = result.indexOf(stringToFind);
    while (index != -1) {
        result = result.replace(stringToFind, stringToReplace);
        index = result.indexOf(stringToFind);
    }
    return result;
}

function SubjectListenerLogin(bbsurl) {
    var url = bbsurl+"test.aspx";
    xmlHttp0.open("GET", url, true);
    xmlHttp0.onreadystatechange =callBack_ReluseLogin;
    xmlHttp0.send(null);
}

function callBack_ReluseLogin()
{
   if (xmlHttp0.readyState == 4 || xmlHttp0.readyState == "complete")
   {
       document.getElementById("nologin").innerHTML="登录成功！";
       setTimeout('location.reload()', 3000);
//       window.location.reload();
   }
}



