<!DOCTYPE html>
<html lang="zh-cmn">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
    <title>WEBVPN资源访问系统</title>
    
    <meta name="keywords"
          content="WebVPN,WEBVPN,VPN,clientless vpn,网瑞达,北京网瑞达科技有限公司,资源访问控制系统,访问控制,堡垒机,SSLVPN,CASB,认证,成都网瑞达科技有限公司,图书馆认证,图书馆统计,图书馆下载分析,电子资源访问控制,论文下载,访问,图书馆"/>
    
    <meta name="viewport"
          content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
    <meta name="renderer" content="webkit">
    <link rel="stylesheet" href="/wengine-vpn/js/css/normalize.css"/>
    <link rel="stylesheet" href="/wengine-vpn/js/css/login.css?v=20200501"/>
    <link rel="stylesheet" href="/wengine-vpn/js/layui/css/layui.css">
    <link rel="stylesheet" href="/wengine-vpn/js/css/quill.snow.css">
    <link rel="stylesheet" href="/wengine-vpn/js/css/drag.css">
    <script src="/wengine-vpn/js/js/wechat-font.js"></script>
    <style>
        #captcha-wrap{
            display:none;
        }
        #error-message{
            display: none;
        }
    </style>
</head>
<body>
<div class="background">
</div>
<div class="main">
    <div class="header">
        
            <div class="portal-logo">
                <img style="height:100%" src="/wengine-vpn/js/image/logo.png"/>
            </div>
            <div class="portal-title">
                <span style="line-height: 48px;">WEBVPN资源访问系统</span>
            </div>
        
    </div>
    <div class="container">
        <div class="notice-panel">
            <div class="notice-box">
                <div class="notice-title">
                    WEBVPN使用说明
                </div>
                <div class="notice-break-line"></div>
                <div class="notice-content">
                    <div class="ql-snow">
                        <div id="ql-editor" class="ql-editor">

                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="login-panel">
            <div class="login-box">
                

                <div class="login-nav-header">
                    <div class="login-nav-wrap">
                        <span class="login-nav-prev"><i class="layui-icon layui-icon-left"></i></span>
                        <span class="login-nav-next"><i class="layui-icon layui-icon-right"></i></span>
                        <div class="login-nav-scroll">
                            <div class="login-nav-nav">
                                
                                    
                                    <div class="login-nav-item" data-type="auth_web_wechat" id="auth_web_wechat">企业微信</div>
                                    
                                
                                    
                                    <div class="login-nav-item" data-type="local" id="local" style="cursor: pointer">账号登录</div>
                                    
                                
                                    
                                
                                    
                                
                                    
                                    <div class="login-nav-item" data-type="cas" id="cas" style="cursor: pointer">CAS认证(测试)</div>
                                    
                                
                                    
                                
                                    
                                
                                    
                                
                                    
                                
                                    
                                
                            </div>
                            
                        </div>
                    </div>
                </div>

                
                    <form class="el-form el-form--label-top" id="form">
                        <input name="auth_type" type="hidden" value="local"/>
                        
                        
                            <div class="login-form-item">
                                <div class="el-input user-input">
                                    <input autocomplete="new-password" id="user_name" placeholder="用户名"
                                           type="text" name="username">
                                </div>
                            </div>
                        

                        <div class="login-form-item sms-field" style="display:none;">
                            <div class="el-input phone-code-input">
                                <input autocomplete="new-code" placeholder="验证码" type="text" name="sms_code"
                                       id="phone-code-input" style="flex:1">
                                <div class="send-sms" id="send-sms">点击发送</div>
                                <img id="help_mark" class="help-mark sms-wx-field"
                                     src="/wengine-vpn/js/image/question-mark.png"/>
                            </div>
                        </div>

                        
                            <div class="login-form-item password-field">
                                <div class="el-input password-input">
                                    <input autocomplete="new-password" placeholder="密码" type="password" name="password">
                                </div>
                            </div>
                        
                        
                        <div class="login-form-item password-field" id="captcha-wrap">
                            <div class="el-input code-input">
                                <input autocomplete="new-code" placeholder="验证码" type="text" name="captcha" style="flex:1">
                                <input type="hidden" name="needCaptcha" value="false">
                                <div class="captcha-div">
                                    <input type="hidden" name="captcha_id" value="r8XT03sp1mAmY0y">
	<a class="captcha" href="javascript:" tabindex="-1">
		<img onclick="this.src=('/captcha/r8XT03sp1mAmY0y.png?reload='+(new Date()).getTime())" class="captcha-img" src="/captcha/r8XT03sp1mAmY0y.png">
	</a>
                                </div>
                            </div>
                        </div>
                        
                        <div class="upper-login-field">
                            
                            <div class="remember-field" style="margin-right: auto; margin-left: unset">
                                <input type="checkbox" name="remember_cookie" style="vertical-align: middle;"/></span>
                                <span>下次自动登录</span>
                            </div>
                            
                            
                        </div>
                        <div class="upper-login-field">
                            <div class="msg" id="error-message">
                            </div>
                        </div>
                        
                        <div class="wechat-qrcode" style="margin-top: 20px">
                            <div id="wechat-qrcode"></div>
                        </div>
                        

                        

                        

                        

                        
                        
                        <div class="el-button-login" style="margin-bottom:20px;" id="cas_login">
                            <a id="cas-login" class="link-login" href="/login?cas_login=true"
                            style="text-decoration:none;color:rgba(0,0,0,0.66);">
                                CAS统一身份认证登录(测试)
                            </a>
                        </div>
                        
                        
                        
                        
                        
                        
                        
                        
                            <button type="button" class="el-button-login  login-btn" style="margin-bottom:20px;" id="login">
                                <i id="loginLoading" class="layui-icon layui-icon-loading layui-anim layui-anim-rotate layui-anim-loop"></i>
                                <span>登录</span>
                            </button>
                        
                    </form>
                    <div class="mobile-notice-panel">
                        <div class="notice-box">
                            <div class="notice-break-line"></div>
                            <div class="notice-title">
                                WEBVPN使用说明
                            </div>
                            <div class="notice-content">
                                <div class="ql-snow">
                                    <div id="mobile-ql-editor" class="ql-editor">
            
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div id="wechat_tip" style="display:none;padding:10px">
                <div style="font-size:16px">1. 请先扫描二维码并关注该服务公众号</div>
                <img src="/wengine-vpn/js/image/wx.png" style="width:120px;height:120px;margin-left:15px;"/>
                <div style="font-size:16px">2. 进入公众号点击”用户认证“进行认证</div>
            </div>
        </div>
        <div class="footer" style="text-align: center;margin-top: 20px;margin-bottom: 10px;">
             <div class="ql-snow">
                <div id="copyright-ql-editor" class="copyright-ql-editor">

                </div>
            </div>
        </div>
    </div>
    <div class="second-login-layer" id="second_login_layer" style="display:none;top: 50%; left: 50%;" >
        <div class="layer-form-title">
            双重登录认证
        </div>
        <form id="second_login_form" class="layui-form">
            <input type="hidden" name="username" autocomplete="off" id="twostep-username">
            <div class="layui-form-item">
                <label class="layui-form-label">手机号</label>
                <div class="layui-input-block">
                    <div id="two_step_phone" style="padding-top: 11px;"></div>
                    <input type="hidden" name="disable_phone" autocomplete="off" disabled class="layui-input"
                           id="twostep-phone" style="border:none">
                </div>
            </div>
            <div class="layui-form-item">
                <div class="layui-inline">
                    <label class="layui-form-label">验证码</label>
                    <div class="layui-input-inline" style="width:130px;">
                        <input type="text" name="code" autocomplete="off" class="layui-input">
                    </div>
                </div>
                <div class="layui-inline">
                    <div class="layui-input-inline" style="width:60px;">
                        <div class="layui-btn layui-btn-mormal" id="send-phone-sms" style="background:#1B9EF3;">获取验证码</div>
                    </div>
                </div>
            </div>
            <div class="layui-form-item">
                <input type="button" id="submit_second_login" class="layui-btn layui-btn-mormal" style="background:#1B9EF3;float:right" value="继续登录"/>
            </div>

        </form>
    </div>

<div class="second-login-layer" id="second_login_layer_totp" style="display:none;top: 50%; left: 50%;" >
    <div class="layer-form-title">
        双重登录认证
    </div>
    <form id="second_login_form_totp" class="layui-form">
        <input type="hidden" name="username" autocomplete="off" id="twostep-username-totp">
        <div class="layui-form-item">
            <div class="layui-inline">
                <label class="layui-form-label">6位动态口令</label>
                <div class="layui-input-inline" style="width:160px;">
                    <input type="text" name="code" autocomplete="off" class="layui-input">
                </div>
            </div>
        </div>
        <div class="layui-form-item">
            <input type="button" id="submit_second_login_totp" class="layui-btn layui-btn-mormal"
                   style="background:#1B9EF3;float:right" value="继续登录"/>
        </div>

    </form>
</div>
<div class="reset_password_layer" id="reset_password_layer" style="display:none;
 top: 50%; left: 50%;">
    <div class="layer-form-title" style="width: 400px">
        重置密码(该功能只能重置本地用户密码)
    </div>
    <form id="reset_password_form" class="layui-form" style="margin-right: 10px">
        <div class="layui-form-item">
            <label class="layui-form-label">账号</label>
            <div class="layui-input-block">
                <input type="text" name="phone" autocomplete="off" class="layui-input" placeholder="请输入手机号或邮箱"
                       id="reset-phone" style="border-color:rgba(0,0,0,0.35); margin-top: 15px">
            </div>
        </div>
        <div class="layui-form-item">
            <div class="layui-inline">
                <label class="layui-form-label">验证码</label>
                <div class="layui-input-inline" style="width:160px;">
                    <input type="text" name="code" autocomplete="off" class="layui-input">
                </div>
            </div>
            <div class="layui-inline">
                <div class="layui-input-inline" style="width:60px;">
                    <div class="layui-btn layui-btn-mormal" id="send-phone-sms-reset" style="background:#1B9EF3;">获取验证码</div>
                </div>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">新密码</label>
            <div class="layui-input-block">
                <input type="password" name="newPass" autocomplete="off" placeholder="请输入新密码"
                       class="layui-input">
                <div class="form-item-tip" id="newPassTip" style="display:none;font-size: 14px;color: red;">密码需要同时包含数字和大小写字母，长度大于等于6</div>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">确认密码</label>
            <div class="layui-input-block">
                <input type="password" name="confirmPass" autocomplete="off" placeholder="请再次输入新密码"
                       class="layui-input">
                <div class="form-item-tip" id="confirmPassTip" style="display:none;font-size: 14px;color: red;">新密码和确认密码不一致</div>
            </div>
        </div>
        <div>
            <input type="button" id="submit_reset_password" class="layui-btn layui-btn-mormal"
                   style="background:#1B9EF3;float:right; margin-bottom: 15px" value="确认修改"/>
        </div>

    </form>
</div>
    <div class="drag-captcha-layer" id="drag-captcha-layer" style="display: none;">
        <div class="drag-captcha-area">
            <div class="drag-captcha-title unselectable" unselectable="on" style="height:20px;">请拖动下方滑块完成验证</div>
            <div class="drag-captcha-center">
                <div class="drag-captcha-bg" id="drag-captcha-bg">
                    <img src="">
                </div>
                <img class="drag-slide-identity" src="">
                <div class="drag-refresh-bg">
                    <img src="/wengine-vpn/js/image/loading.gif">
                </div>
                <div class="drag-slide-message">验证失败</div>
            </div>
            <div class="drag-captcha-footer">
                <div class="drag-captcha-slidebar">
                    <div class="drag-captcha-slidebar-tip unselectable" unselectable="on">请向右拖动滑块</div>
                </div>
                <div class="drap-captcha-slidetrigger unselectable" id="drap-captcha-slidetrigger">
                    >>
                </div>
            </div>
        </div>
    </div>
    <div class="drag-captcha-layer-sms" id="drag-captcha-layer-sms" style="display: none;">
        <div class="drag-captcha-area-sms">
            <div class="drag-captcha-title-sms unselectable" unselectable="on" style="height:20px;">请拖动下方滑块完成验证</div>
            <div class="drag-captcha-center-sms">
                <div class="drag-captcha-bg-sms" id="drag-captcha-bg-sms">
                    <img src="">
                </div>
                <img class="drag-slide-identity-sms" src="">
                <div class="drag-refresh-bg-sms">
                    <img src="/wengine-vpn/js/image/loading.gif">
                </div>
                <div class="drag-slide-message-sms">验证失败</div>
            </div>
            <div class="drag-captcha-footer-sms">
                <div class="drag-captcha-slidebar-sms">
                    <div class="drag-captcha-slidebar-tip-sms unselectable" unselectable="on">请向右拖动滑块</div>
                </div>
                <div class="drap-captcha-slidetrigger-sms unselectable" id="drap-captcha-slidetrigger-sms">
                    >>
                </div>
            </div>
        </div>
    </div>
    <div class="wechat_binding_layer" id="wechat_binding_layer" style="display:none">
        <div class="layer-form-title" style="width: auto">
            微信账号绑定
        </div>
        <form id="wechat_binding_form" class="layui-form">
            <div class="layui-form-item">
                <div class="layui-inline">
                    <label class="layui-form-label">账号</label>
                    <div class="layui-input-inline" style="width:160px;">
                        <input type="text" name="username" autocomplete="off" class="layui-input">
                    </div>
                </div>
                <div class="layui-inline">
                    <label class="layui-form-label">密码</label>
                    <div class="layui-input-inline" style="width:160px;">
                        <input type="password" name="password" autocomplete="off" class="layui-input">
                    </div>
                </div>
            </div>
            <div>
                <input type="button" id="submit_wechat_binding" class="layui-btn layui-btn-mormal"
                       style="background:#1B9EF3;float:right" value="继续登录"/>
            </div>

        </form>
    </div>

    <script type="text/javascript" src="/wengine-vpn/js/js/jquery.min.js"></script>
    <script type="text/javascript" src="/wengine-vpn/js/layer-v3.1.1/layer.js"></script>
    <script type="text/javascript" src="/wengine-vpn/js/layui/layui.js"></script>
    <script type="text/javascript" src="/wengine-vpn/js/aes-js.js"></script>
    <script type="text/javascript">
        var utf8 = aesjs.utils.utf8;
        var hex = aesjs.utils.hex
        var AesCfb = aesjs.ModeOfOperation.cfb
        var textRightAppend = function (text, mode) {
            var segmentByteSize = mode === 'utf8' ? 16 : 32

            if (text.length % segmentByteSize === 0) {
                return text
            }

            var appendLength = segmentByteSize - text.length % segmentByteSize
            var i = 0
            while (i++ < appendLength) {
                text += '0'
            }
            return text
        }

        var encrypt = function (text, key, iv) {
            var textLength = text.length
            text = textRightAppend(text, 'utf8')
            var keyBytes = utf8.toBytes(key)
            var ivBytes = utf8.toBytes(iv)
            var textBytes = utf8.toBytes(text)
            var aesCfb = new AesCfb(keyBytes, ivBytes, 16)
            var encryptBytes = aesCfb.encrypt(textBytes)
            return hex.fromBytes(ivBytes) + hex.fromBytes(encryptBytes).slice(0, textLength * 2)
        }
    </script>
    
    <script type="text/javascript" src="//rescdn.qqmail.com/node/ww/wwopenmng/js/sso/wwLogin-1.0.0.js"></script>
    <script type="text/javascript" src="/wengine-vpn/js/qrcode.min.js"></script>
    
    
    
    
    <script type="text/javascript" src="/wengine-vpn/js/js/drag_sms.js"></script>

    <script type="text/javascript">
        $('.drag-captcha-layer').on('touchmove',function(event){
            event.preventDefault();
        });
        $('.drag-captcha-layer-sms').on('touchmove',function(event){
            event.preventDefault();
        });
        
        $("#ql-editor").html("\u003cp\u003e欢迎使用WEBVPN系统，为加强网络安全管理，减少VPN账号盗用引发的风险与问题，推荐采用企业微信APP扫码登录，请加入河北大学企业微信后登录。账号登录方式作为备选方式临时开放期间，如遇到账号验证问题请改用企业微信扫码登录。\u003c/p\u003e\u003cp\u003e注意：(1)如已加入而企业微信APP扫码登录提示\u003cstrong\u003e\u003cu\u003e无权限\u003c/u\u003e\u003c/strong\u003e，请点击企业微信APP-消息-左上角菜单图标（三个短横线）核对是否已勾选为“河北大学”。(2)河北大学官方企业微信的名称为“河北大学”，加入其它企业微信接收的信息及群聊与学校无关，如误加入其它企业，可点击菜单-设置图标-管理企业-选择误加入的企业后退出或解散。(3)河北大学企业微信加入方式：点击或进入\u003ca href=\"https://hbu.cn/info/1354/20726.htm\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e河北大学主页-右侧扩展栏 网络服务-企业微信\u003c/a\u003e，企业微信加入问题可从\u003ca href=\"https://ibp.hbu.edu.cn/sign_in\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e信息化流程平台\u003c/a\u003e提交。(4)如通过webvpn访问知网不稳定，可直接在\u003ca href=\"https://www.cnki.net/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e知网首页\u003c/a\u003e 右上角-机构登录-\u003ca href=\"https://fsso.cnki.net/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e校外访问\u003c/a\u003e-河北大学-输入学校统一认证账号密码访问知网。(5)河北大学统一认证平台入口：\u003ca href=\"https://cas.hbu.edu.cn/lyuapServer/login\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: rgb(0, 102, 204); background-color: rgb(250, 204, 204);\"\u003e请点击\u003c/a\u003e。(6)河北大学密码找回入口：\u003ca href=\"https://www.hbu.cn/info/1354/20724.htm\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204); color: rgb(0, 102, 204);\"\u003e请点击\u003c/a\u003e\u003c/p\u003e");
        $("#mobile-ql-editor").html("\u003cp\u003e欢迎使用WEBVPN系统，为加强网络安全管理，减少VPN账号盗用引发的风险与问题，推荐采用企业微信APP扫码登录，请加入河北大学企业微信后登录。账号登录方式作为备选方式临时开放期间，如遇到账号验证问题请改用企业微信扫码登录。\u003c/p\u003e\u003cp\u003e注意：(1)如已加入而企业微信APP扫码登录提示\u003cstrong\u003e\u003cu\u003e无权限\u003c/u\u003e\u003c/strong\u003e，请点击企业微信APP-消息-左上角菜单图标（三个短横线）核对是否已勾选为“河北大学”。(2)河北大学官方企业微信的名称为“河北大学”，加入其它企业微信接收的信息及群聊与学校无关，如误加入其它企业，可点击菜单-设置图标-管理企业-选择误加入的企业后退出或解散。(3)河北大学企业微信加入方式：点击或进入\u003ca href=\"https://hbu.cn/info/1354/20726.htm\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e河北大学主页-右侧扩展栏 网络服务-企业微信\u003c/a\u003e，企业微信加入问题可从\u003ca href=\"https://ibp.hbu.edu.cn/sign_in\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e信息化流程平台\u003c/a\u003e提交。(4)如通过webvpn访问知网不稳定，可直接在\u003ca href=\"https://www.cnki.net/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e知网首页\u003c/a\u003e 右上角-机构登录-\u003ca href=\"https://fsso.cnki.net/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204);\"\u003e校外访问\u003c/a\u003e-河北大学-输入学校统一认证账号密码访问知网。(5)河北大学统一认证平台入口：\u003ca href=\"https://cas.hbu.edu.cn/lyuapServer/login\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: rgb(0, 102, 204); background-color: rgb(250, 204, 204);\"\u003e请点击\u003c/a\u003e。(6)河北大学密码找回入口：\u003ca href=\"https://www.hbu.cn/info/1354/20724.htm\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(250, 204, 204); color: rgb(0, 102, 204);\"\u003e请点击\u003c/a\u003e\u003c/p\u003e");
        $("#copyright-ql-editor").html("\u003cp class=\"ql-align-center\"\u003e河北大学\u003c/p\u003e")

        var smsSuccessFunc
        var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent)
        var checkTimer
        var logoutByOther = ''
        if (logoutByOther != "") {
            layer.msg("您的账号已经在其他地点登录，请检查账号密码是否泄漏");
        }

        var logoutByIpChange = ''
        if (logoutByIpChange != "") {
            layer.msg("您的账号IP发生变化，请重新登录");
        }

        var errorMessage = ''
        if (errorMessage != "") {
            layer.msg(errorMessage)
        }

        var needTwoStep = ''
        if (needTwoStep != "") {
            layer.msg("您的账号需要双因子认证！")
        }

        var notHasError = logoutByOther == "" && errorMessage == "" && logoutByIpChange == "" && needTwoStep == "";

        var sec;
        var intervalId = 0;
        var qrcodeSendState = 0;

        function initCaptchaSMS() {
            $(".drag-refresh-bg-sms").css("display", "none")
            $(".drag-slide-message-sms").css("display", "none")
            $(".drag-slide-message-sms").text("")
            $(".drag-slide-message-sms").removeClass("succes-message")

            $(".drag-slide-identity-sms").css("top", 30 + "px")
            $(".drap-captcha-slidetrigger-sms").css("left", 10 + "px")
            $(".drag-slide-identity-sms").css("left", 10 + "px")
            loadCaptchaSMS()
        }


        function loadCaptchaSMS() {
            $(".drag-refresh-bg-sms").css("display", "block");
            $.get("/smscode/image?_="+Date.now(), function(data){
                $(".drag-captcha-bg-sms img").attr("src", data.p)
                $(".drag-slide-identity-sms").attr("src", data.s)
                $(".drag-slide-identity-sms").css("top", data.h + 30 + "px")
                $(".drag-refresh-bg-sms").css("display", "none")
            })
        }

        
        $(function() {
            $('input[name="newPass"]').bind('keyup', function () {
                var input = $(this).val();
                if (!/\d/.test(input) || !/[A-Z]/.test(input) || !/[a-z]/.test(input) || input.length < 6) {
                    $('#newPassTip').show();
                } else {
                    $('#newPassTip').hide();
                }

                if ($('input[name="confirmPass"]').val() != '' && input != $('input[name="confirmPass"]').val()) {
                    $('#confirmPassTip').show();
                } else {
                    $('#confirmPassTip').hide();
                }
            });

            $('input[name="confirmPass"]').bind('keyup', function () {
                var input = $(this).val();
                if (input != $('input[name="newPass"]').val()) {
                    $('#confirmPassTip').show();
                } else {
                    $('#confirmPassTip').hide();
                }
            });
            $('#submit_reset_password').click(function () {
                var data = $("#reset_password_form").serializeArray();
                
                for (var i in data) {
                    if (data[i].name === "newPass" || data[i].name === "confirmPass") {
                        data[i].value = encrypt(data[i].value, "wrdvpnisawesome!", "wrdvpnisawesome!")
                    }
                }
                
                $.ajax({
                    url: '/reset-password',
                    data: data,
                    dataType: 'json',
                    type: 'POST',
                    success: function (res) {
                        if (res.success) {
                            layer.msg("重置密码成功！");
                            setTimeout(function () {
                                window.location.href = "";
                            }, 1000);
                        } else {
                            layer.msg(res.message);
                        }
                    }
                })
            });
        })
        $(function () {
            var innerWidth = window.innerWidth;
            var offset = innerWidth > 750 ? '350px' : '50%' 
            var area = innerWidth > 750 ? '460px' : innerWidth * 0.9 + 'px'
            
            var logining = false
            $('#user_name').focus();
            $('form#form input').on('keyup', function(e){
                if(e.keyCode == 13 && !logining && $("#drag-captcha-layer").css("display") === "none"){
                    logining = true
                    $('#login').trigger('click');
                }
            });
            $('form#form button').on('keydown', function(e){
                if(e.keyCode == 13){
                    e.preventDefault();
                }
            });
            $('#reset-password').click(function () {
                layer.open({
                    type: 1,
                    shade: 0.3,
                    title: false,
                    shadeClose: true,
                    closeBtn: 1,
                    scrollbar: false,
                    offset: '350px',
                    area: "460px",
                    content: $('#reset_password_layer')
                });
                return;
            })
            $('#login').click(function() {
                var data = $('#form').serializeArray()
                $("#error-message").hide()
                $('#twostep-phone').val("")
                $('#twostep-phone2').val("")
                $('#twostep-username').val("")
                
                    for (var i in data) {
                        if (data[i].name === "password") {
                            data[i].value = encrypt(data[i].value, "wrdvpnisawesome!", "wrdvpnisawesome!")
                        }
                    }
                
                $('#loginLoading').css('display', 'inline-block')
                $.post('/do-login', data, function(res) {
                    setTimeout(function(){
                        $('#loginLoading').css('display', 'none')
                    },200)
                    logining = false
                    if (res.success) {
                        location.href = res.url
                    }else{
                        switch (res.error) {
                            case "WEEK_PASSWORD_FORBID":
                                layer.open({
                                    content: res.message,
                                    
                                    btn: ['修改密码'],
                                    yes: function () {
                                        location.href = "https:\/\/www.hbu.cn\/info\/1354\/20724.htm"
                                    },
                                    
                                });
                                return;
                                layer.open({
                                    content: res.message,
                                    btn: ['修改密码'],
                                    yes: function () {
                                        location.href = ""
                                    },
                                    cancel: function() {
                                        $("#error-message").show();
                                        $("#error-message").html("弱密码禁止登录，请进行密码修改")
                                        return false
                                    },
                                })
                                return;
                            case "IP_FORBIDDEN":
                            case "TOO_MANY_ATTEMPTS":
                            
                            case "CAPTCHA_FAILED":
                            
                            case "INVALID_ACCOUNT":
                                
                                $(".captcha img").trigger('click');
                                $("#captcha-wrap").show();
                                

                                $("#error-message").show();
                                $("#error-message").html(res.message)
                                return;
                            
                            case "NEED_CONFIRM":
                                layer.confirm('该账号已经登录，继续登录将踢掉其他已登录账号', {
                                    btn: ['继续', '取消']
                                }, function () {
                                    $.ajax({
                                        url: "/do-confirm-login",
                                        dataType: 'json',
                                        type: 'POST',
                                        success: function (res) {
                                            if (res.success) {
                                                layer.msg("登录成功！");
                                                setTimeout(function () {
                                                    window.location.href = res.url
                                                }, 1000);
                                            } else {
                                                layer.msg(res.url);
                                            }
                                        }
                                    })
                                });
                                return;
                            case "NEED_TWO_STEP":
                                $('input[name="disable_phone"]').val(res.phone);
                                $('#two_step_phone').text(res.phone.substring(0, 3) + "****" + res.phone.substring(7));
                                $('#second_login_layer').on('keydown', function(e){
                                    if(e.keyCode == 13){
                                        $('#second_login_layer #submit_second_login').trigger('click');
                                        return false;
                                    }
                                });
                                layer.open({
                                    type: 1,
                                    shade: 0.3,
                                    title: false,
                                    shadeClose: true,
                                    closeBtn: 1,
                                    scrollbar: false,
                                    offset: offset,
                                    area: area,
                                    content: $('#second_login_layer')
                                });
                                return;
                            case "NEED_TWO_STEP_TOTP":
                                layer.open({
                                    type: 1,
                                    shade: 0.3,
                                    title: false,
                                    shadeClose: true,
                                    closeBtn: 1,
                                    scrollbar: false,
                                    offset: offset,
                                    area: area,
                                    content: $('#second_login_layer_totp')
                                });
                                return;
                            case "WECHAT_BINDING":
                                layer.open({
                                    type: 1,
                                    shade: 0.3,
                                    title: false,
                                    shadeClose: true,
                                    closeBtn: 1,
                                    scrollbar: false,
                                    offset: '350px',
                                    area: "460px",
                                    content: $('#wechat_binding_layer')
                                });
                                return;
                            case "WEEK_PASSWORD_CHECK":
                                layer.open({
                                    content: res.message,
                                    
                                    btn: ['确认', '修改密码'],
                                    
                                    yes: function () {
                                        location.href = res.url
                                    },
                                    
                                    btn2: function(){
                                        location.href = "https:\/\/www.hbu.cn\/info\/1354\/20724.htm"
                                    },
                                    
                                });
                                return;
                            case "INVALID_FAILURETIME":
                                layer.open({
                                    content: '您的有效期已经过期，点击“确认”按钮可申请延长有效期。延长有效期需要管理员确认，请耐心等待。',
                                    
                                    btn: ['确认'],
                                    
                                    yes: function (index, layero) {
                                        sendExtendValidate()
                                        layer.close(index)
                                    },
                                    
                                })
                                return;
                            default:
                                layer.alert("未在当前版本实现的功能")
                        }
                    }
                }).fail(function (response) {
                    location.href = '/login'
                });
            });

            function sendExtendValidate() {
                $.post('/extend_failure_time', {}, function(res) {
                })
            }

            function sendPhoneSMSReset($that){
            return function () {
                var phone = $('input[name="phone"]').val()
                var auth_type = $(".on").data('type')
                if (!/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(phone) && !/^[1][0-9]{10}$/.test(phone)) {
                    layer.msg('账号请填写手机号或者邮箱');
                    return
                }
                if ($that.hasClass('disabled')) {
                    return;
                }
                window.clearInterval(intervalId);
                $.post('/send-reset-sms/', {phone: phone, auth_type: auth_type}, function (res) {
                    if(!res.success){
                        layer.msg(res.message);
                        return;
                    } else {
                        sec = 59;
                        $that.html(sec);
                        $that.addClass('disabled');
                        intervalId = setInterval(function () {
                            counting = true;
                            $that.html(sec);
                            sec -= 1;
                            if (sec < 0) {
                                $that.removeClass('disabled');
                                counting = false;
                                $that.html('点击发送');
                            }
                        }, 1000);
                    }
                });
            }
        }

            $('#send-phone-sms-reset').click(function () {
                smsSuccessFunc = sendPhoneSMSReset($(this))
                layer.open({
                    type: 1,
                    shade: 0.3,
                    title: false,
                    shadeClose: true,
                    closeBtn: 1,
                    scrollbar: false,
                    offset: 'auto',
                    area: "300px",
                    content: $('#drag-captcha-layer-sms'),
                    success: initCaptchaSMS
                })
            });

            function sendPhoneSMS($that) {
                return function () {
                    var phone = $('input[name="disable_phone"]').val()
                    var auth_type = $(".on").data('type')

                    if(phone.length != 11){
                        layer.msg('您的手机号格式不正确,无法获得验证码！');
                        return
                    }
                    if ($that.hasClass('disabled')) {
                        return;
                    }
                    window.clearInterval(intervalId);
                    $.post('/send-sms/', {username: phone, auth_type: auth_type}, function (res) {
                        if(!res.success){
                            layer.msg(res.message);
                            return;
                        } else {
                            sec = 59;
                            $that.html(sec);
                            $that.addClass('disabled');
                            intervalId = setInterval(function () {
                                counting = true;
                                $that.html(sec);
                                sec -= 1;
                                if (sec < 0) {
                                    $that.removeClass('disabled');
                                    counting = false;
                                    $that.html('点击发送');
                                }
                            }, 1000);
                        }
                    });
                }
            }

            $('#send-phone-sms').click(function () {
                smsSuccessFunc = sendPhoneSMS($(this))
                layer.open({
                    type: 1,
                    shade: 0.3,
                    title: false,
                    shadeClose: true,
                    closeBtn: 1,
                    scrollbar: false,
                    offset: 'auto',
                    area: "300px",
                    content: $('#drag-captcha-layer-sms'),
                    success: initCaptchaSMS
                })
            });

            function sendSMS($that) {
                return function () {
                    var phone = $("#user_name").val()
                    
                    var auth_type = $(".on").data('type')
                    

                    if(phone.length != 11){
                        layer.msg('您的手机号格式不正确,无法获得验证码！');
                        return
                    }
                    if ($that.hasClass('disabled')) {
                        return;
                    }
                    window.clearInterval(intervalId);
                    $.post('/send-sms/', {username: phone, auth_type: auth_type}, function (res) {
                        if(!res.success){
                            layer.msg(res.message);
                            return;
                        } else {
                            sec = 59;
                            $that.html(sec);
                            $that.addClass('disabled');
                            intervalId = setInterval(function () {
                                counting = true;
                                $that.html(sec);
                                sec -= 1;
                                if (sec < 0) {
                                    $that.removeClass('disabled');
                                    counting = false;
                                    $that.html('点击发送');
                                }
                            }, 1000);
                        }
                    });
                }
            }
            $('.send-sms').click(function () {
                smsSuccessFunc = sendSMS($(this))
                layer.open({
                    type: 1,
                    shade: 0.3,
                    title: false,
                    shadeClose: true,
                    closeBtn: 1,
                    scrollbar: false,
                    offset: 'auto',
                    area: "300px",
                    content: $('#drag-captcha-layer-sms'),
                    success: initCaptchaSMS
                })
            });

            $('#submit_second_login').click(function () {
                var data = $("#second_login_form").serialize();
                $.ajax({
                    url: "/do-second-login",
                    data: data,
                    dataType: 'json',
                    type: 'POST',
                    success: function (res) {
                        if (res.success) {
                            layer.msg("登录成功！");
                            setTimeout(function () {
                                window.location.href = res.url;
                            }, 1000);
                        } else {
                            layer.msg(res.message);
                        }
                    }
                })
            });

            $('#submit_second_login_totp').click(function () {
                var data = $("#second_login_form_totp").serialize();
                $.ajax({
                    url: "/do-second-login",
                    data: data,
                    dataType: 'json',
                    type: 'POST',
                    success: function (res) {
                        if (res.success) {
                            layer.msg("登录成功！");
                            setTimeout(function () {
                                window.location.href = res.url;
                            }, 1000);
                        } else {
                            layer.msg(res.message);
                        }
                    }
                })
            });

            $('#submit_wechat_binding').click(function () {
                var data = $("#wechat_binding_form").serialize();
                $.ajax({
                    url: "/do-wechat-binding",
                    data: data,
                    dataType: 'json',
                    type: 'POST',
                    success: function (res) {
                        if (res.success) {
                            layer.msg("绑定成功！");
                            setTimeout(function () {
                                window.location.href = res.url;
                            }, 1000);
                        } else {
                            layer.msg(res.message);
                        }
                    }
                })
            });

            $('#submit_confirm_login').click(function () {
                var data = $("#confirm_login_form").serialize();
                $.ajax({
                    url: "/do-confirm-login",
                    data: data,
                    dataType: 'json',
                    type: 'POST',
                    success: function (res) {
                        if (res.success) {
                            layer.msg("登录成功！");
                            setTimeout(function () {
                                window.location.href = res.data
                            }, 1000);
                        }
                    }
                })
            });

            var currentCursor = 0;

            $(".login-nav-next").click(function () {
                if ($(".login-nav-scroll").width() < $(".login-nav-nav").width()) {
                    currentCursor = $(".login-nav-scroll").width() - $(".login-nav-nav").width();
                    $(".login-nav-nav").css("transform",  "translateX(" + currentCursor + "px)");
                    $(".login-nav-nav").css("-ms-transform",  "translateX(" + currentCursor + "px)");
                    $(".login-nav-nav").css("-moz-transform",  "translateX(" + currentCursor + "px)");
                    $(".login-nav-nav").css("-webkit-transform",  "translateX(" + currentCursor + "px)");
                    $(".login-nav-nav").css("-o-transform",  "translateX(" + currentCursor + "px)");
                }                
            });

            $(".login-nav-prev").click(function () {
                currentCursor = 0;
                $(".login-nav-nav").css("transform",  "translateX(" + currentCursor + "px)");
                $(".login-nav-nav").css("-ms-transform",  "translateX(" + currentCursor + "px)");
                $(".login-nav-nav").css("-moz-transform",  "translateX(" + currentCursor + "px)");
                $(".login-nav-nav").css("-webkit-transform",  "translateX(" + currentCursor + "px)");
                $(".login-nav-nav").css("-o-transform",  "translateX(" + currentCursor + "px)");
            });
            

            
            

            
            if (isWXwork()) {
                
                $(".login-nav-item#auth_web_wechat").remove();
                
            }
            

            
            $(".login-nav-item").off("click").on("click", function () {
            
                var index = $(this).index();
                
                $(this).addClass("on").siblings().removeClass("on");
                
                if ($(this).data('type') == 'local') {
                    $('.password-field').show();
                    
                    $("#captcha-wrap").hide();
                    
                    $('.sms-field').hide();
                    $('.el-button-login').show();
                    $('input[name=auth_type]').val('local');
                    $('#user_name').parent().removeClass('phone-input');
                    $('#user_name').parent().removeClass('user-input');
                    $('#user_name').parent().addClass('user-input');
                    $('#user_name').attr('placeholder', "用户名");
                    $('.user-input').show();
                    $('.user-input').parent().show();
                    $('.remember-field').show();
                    $('.reset-password').show();
                    $('.wechat-qrcode').hide();
                    $('.dingding-qrcode').hide();
                    $('#dingding_mobile_login').hide();
                    $('.wrd-qrcode').hide();
                    $('.personal-wechat').hide();
                    $('#oidc_login').hide();
                    $('#oidc_forgget').hide();
                    $('#cas_login').hide();
                    $('#cas_forgget').hide();
                    $('#escience_login').hide();
                    $('#escience_forgget').hide();
                    $('#more_login').hide();
                    $('#standard_login').hide();
                    $('#wrd_forgget').hide();
                } else if ($(this).data('type') == 'auth_sms') {
                    $('.password-field').hide();
                    $('.sms-field').show();
                    $('.el-button-login').show();
                    $('.sms-wx-field').hide();
                    $('.user-input').show();
                    $('.user-input').parent().show();
                    $('input[name=auth_type]').val('auth_sms');
                    $('#user_name').parent().removeClass('user-input');
                    $('#user_name').parent().addClass('phone-input');
                    $('#user_name').attr('placeholder', "手机号");
                    $('.phone-input').show();
                    $('.phone-input').parent().show();
                    $('.remember-field').hide();
                    $('.reset-password').hide();
                    $('.wechat-qrcode').hide();
                    $('.dingding-qrcode').hide();
                    $('#dingding_mobile_login').hide();
                    $('.wrd-qrcode').hide();
                    $('.personal-wechat').hide();
                    $('#oidc_login').hide();
                    $('#oidc_forgget').hide();
                    $('#cas_login').hide();
                    $('#cas_forgget').hide();
                    $('#escience_login').hide();
                    $('#escience_forgget').hide();
                    $('#more_login').hide();
                    $('#standard_login').hide();
                    $('#wrd_forgget').hide();
                }
                
                
                else if ($(this).data('type') == 'auth_web_wechat') {
                    $("#error-message").hide()
                    $('.sms-field').hide();
                    $('.sms-wx-field').hide();
                    $('.password-field').hide();
                    $('.user-input').hide();
                    $('.user-input').parent().hide();
                    $('.phone-input').hide();
                    $('.phone-input').parent().hide();
                    $('.remember-field').hide();
                    $('.reset-password').hide();
                    $('.el-button-login').hide();
                    $('.dingding-qrcode').hide();
                    $('#dingding_mobile_login').hide();
                    $('.wrd-qrcode').hide();
                    $('.personal-wechat').hide();
                    $('#oidc_login').hide();
                    $('#oidc_forgget').hide();
                    $('#cas_login').hide();
                    $('#cas_forgget').hide();
                    $('#escience_login').hide();
                    $('#escience_forgget').hide();
                    $('#more_login').hide();
                    $('#standard_login').hide();
                    $('#wrd_forgget').hide();
                    $('.wechat-qrcode').show();
                    
                    
                    if (!isWXwork()) {
                        window.WwLogin({
                            "id": "wechat-qrcode",
                            "appid" : "wx647786272d5f3649",
                            "agentid" : "1000006",
                            "redirect_uri": "https:\/\/v.hbu.cn\/login?wechat_login=true",
                            "state" : "STATE",
                            "href" : "data:text/css;base64,LmltcG93ZXJCb3ggLnFyY29kZSB7d2lkdGg6IDIwMHB4O30KLmltcG93ZX" +
                                "JCb3ggLnRpdGxlIHtkaXNwbGF5OiBub25lO30KLmltcG93ZXJCb3ggLmluZm8ge3dpZHRoOiAyMDBweDt9Ci5" +
                                "zdGF0dXNfaWNvbiB7ZGlzcGxheTogbm9uZSAgIWltcG9ydGFudH0KLmltcG93ZXJCb3ggLnN0YXR1cyB7dGV4d" +
                                "C1hbGlnbjogY2VudGVyO30K",
                        });
                    }
                    
                }
                
                
                

                
                else if ($(this).data('type') == 'cas') {
                    $("#error-message").hide()
                    $('.sms-field').hide();
                    $('.sms-wx-field').hide();
                    $('.password-field').hide();
                    $('.user-input').hide();
                    $('.phone-input').hide();
                    $('.user-input').parent().show();
                    $('.phone-input').parent().show();
                    $('.remember-field').hide();
                    $('.reset-password').hide();
                    $('.el-button-login').hide();
                    $('.wechat-qrcode').hide();
                    $('.dingding-qrcode').hide();
                    $('#dingding_mobile_login').hide();
                    $('.wrd-qrcode').hide();
                    $('.personal-wechat').hide();
                    
                    
                    $('#cas_login').show();
                    $('#cas_forgget').show();
                    
                    
                    $('#standard_login').hide();
                    $('#wrd_forgget').hide();
                    $('#more_login').hide();
                }
                
                
                else if ($(this).data('type') == 'more_auth') {
                    $('.sms-field').hide();
                    $('.sms-wx-field').hide();
                    $('.password-field').hide();
                    $('.user-input').hide();
                    $('.user-input').parent().show();
                    $('.phone-input').hide();
                    $('.phone-input').parent().show();
                    $('.remember-field').hide();
                    $('.reset-password').hide();
                    $('.el-button-login').hide();
                    $('.wechat-qrcode').hide();
                    $('.dingding-qrcode').hide();
                    $('#dingding_mobile_login').hide();
                    $('.wrd-qrcode').hide();
                    $('.personal-wechat').hide();
                    $('#oidc_login').hide();
                    $('#oidc_forgget').hide();
                    $('#cas_login').hide();
                    $('#cas_forgget').hide();
                    $('#escience_login').hide();
                    $('#escience_forgget').hide();
                    $('#standard_login').hide();
                    $('#wrd_forgget').hide();
                    $('#more_login').show();
                } else {
                    $('.sms-field').show();
                    $('.sms-wx-field').show();
                    $('.password-field').hide();
                    $('input[name=auth_type]').val('auth_wx_sms');
                    $('#user_name').parent().removeClass('user-input');
                    $('#user_name').parent().addClass('phone-input');
                    $('#user_name').attr('placeholder', "手机号");
                    $('.phone-input').show();
                    $('.phone-input').parent().show();
                    $('.el-button-login').show();
                    $('.remember-field').hide();
                    $('.reset-password').hide();
                    $('.wechat-qrcode').hide();
                    $('.dingding-qrcode').hide();
                    $('#dingding_mobile_login').hide();
                    $('.wrd-qrcode').hide();
                    $('.personal-wechat').hide();
                    $('#oidc_login').hide();
                    $('#oidc_forgget').hide();
                    $('#cas_login').hide();
                    $('#cas_forgget').hide();
                    $('#escience_login').hide();
                    $('#escience_forgget').hide();
                    $('#standard_login').hide();
                    $('#wrd_forgget').hide();
                    $('#more_login').hide();
                }
            });
            

            
            $(".login-nav-item").first().click();
            

            $('#help_mark').hover(function () {
                var display_width = getWidth() / 2 + 50;
                var display_height = getHeight() / 2;
                if (display_width <= 416) {
                    var offset = 'auto';
                } else {
                    var offset = [display_height + 'px', display_width + 'px'];
                }
                layer.open({
                    type: 1,
                    shade: 0,
                    title: false,
                    shadeClose: true,
                    closeBtn: 0,
                    offset: offset,
                    area: ['320px'],
                    content: $('#wechat_tip')
                });

            }, function () {
                layer.closeAll();
            });

        });

        
        function getWidth() {
            if (window.innerWidth) {
                winWidth = window.innerWidth;
            } else if ((document.body) && (document.body.clientWidth)) {
                winWidth = document.body.clientWidth;
            }
            if (document.documentElement && document.documentElement.clientHeight && document.documentElement.clientWidth) {
                winWidth = document.documentElement.clientWidth;
            }
            return winWidth;
        }

        
        function getHeight() {
            if (window.innerHeight) {
                winHeight = window.innerHeight;
            } else if ((document.body) && (document.body.clientHeight)) {
                winHeight = document.body.clientHeight;
            }
            if (document.documentElement && document.documentElement.clientHeight && document.documentElement.clientWidth) {
                winHeight = document.documentElement.clientHeight;
            }
            return winHeight;
        }
    </script>
    
    <script type="text/javascript">
    function isWXwork(){
        var ua = navigator.userAgent.toLowerCase();
        if(ua.match(/wxwork/i)=="wxwork") {
            return true;
        } else {
            return false;
        }
    }

    if (isWXwork()) {
        
        $(".wechat-qrcode").hide()
        $('#auth_web_wechat').hide()
    }

    if (isWXwork() && notHasError) {
        
        window.location.href = "/login?wechat_login=true"
    }
    </script>
    

    

</body>
</html>

