You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

248 lines
9.3 KiB

7 months ago
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>统一认证中心</title>
<link rel="stylesheet" type="text/css" href="/dsssoserver/css/style.css"/>
<script type="text/javascript" src="/dsssoserver/js/jquery-1.12.4.min.js"></script>
<script src="/dsssoserver/js/aes.js" type="text/javascript"></script>
</head>
<body>
<div id="header">
<img src="/dsssoserver/images/edusoa.png" style="margin-left: 30px;margin-top: 8px;"/>
<span style="font-size:36px;display: block;margin-left: 243px;margin-top: -58px;font-weight:bold"
id="system_name"></span>
</div>
<div class="login-wrap">
<div class="wrap clearfix">
<img src="/dsssoserver/images/login-img.png" style="margin-top: 22px;"/>
<div class="form-box fr loginV2" style="display: block;">
<ul class="form-tab clearfix">
<li class="tab-li cur">
<a href="javascript:;" tjjj="passport.login_type.login_name">账户登录</a></li>
</ul>
<div class="form-con">
<div class="login-normal" style="display: block;">
<form id="nameLoginForm">
<div class="form-error" style="">
<i>
</i>
<label class="text"></label>
</div>
<dl class="clearfix">
<dt><em></em>户:</dt>
<dd>
<input type="text" name="loginName" id="usernameTxt" value="" class="input-text"
autocomplete="off" placeholder="账户名/邮箱/手机号"/></dd>
</dl>
<dl class="top1 clearfix">
<dt><em></em>码:</dt>
<dd>
<input type="password" name="password" id="passwordTxt" value="" class="input-text"
placeholder="请输入密码"></dd>
</dl>
<dl class="top2 clearfix" id="yzm">
<dt>验证码:</dt>
<dd>
<input name="smsCaptcha" type="text" id="captchaTxt" class="input-yzm" maxlength="4"
autocomplete="off"/>
<span class="span-yzm">
<img id="userCaptchaImage" src="/dsssoserver/getCaptcha?id=1" title="点击图片刷新校验码"
alt="点击图片刷新校验码"
style="cursor:pointer" onclick="javascript:refreshCaptcha()"/>
<a onclick="javascript:refreshCaptcha()" class="forget-pass"
style="cursor:pointer">换一张</a></span>
</dd>
</dl>
<div class="btn-box clearfix" style="margin-top: 10px;">
<input id="loginBtn" class="btn-settlement" type="button" value="登 录"
tjjj="passport.button.login"></div>
</form>
</div>
</div>
</div>
</div>
</div>
<div style="text-align:center" id="copyright">
</div>
</body>
<script type="text/javascript">
$(function () {
$("#loginBtn").click(function () {
doLogin();
});
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i].trim();
if (c.indexOf(name) == 0) return c.substring(name.length, c.length);
}
return "";
}
$("#smsLoginBtn").click(function () {
var smsFlag = $("#smsFlagHidden").val();
var smsCode = $("#smsCode").val();
var phonenum = $("#phoneTxt").val();
smsLogin(smsFlag, smsCode, phonenum);
});
//获取页面信息,包括系统名称,版权信息
getPageInfo();
});
$(document).keydown(function (event) {
if (event.keyCode === 13) {//回车键对应code值为13
doLogin();
}
});
function doLogin() {
var username = $("#usernameTxt").val();
var password = $("#passwordTxt").val();
var captcha = $("#captchaTxt").val();
userLogin(username, password, captcha);
}
//用户名登录
function userLogin(username, password, captcha) {
if (userLoginCheck(username, password, captcha)) {
var redirect_url = getUrlParam("redirect_url");
var default_redirect_url = getDefaultRedirectUrl();
if (default_redirect_url.length > 0) {
redirect_url = default_redirect_url;
}
$.ajax({
type: "POST",
dataType: "json",
7 months ago
url: "/dsssoserver/web/doLogin",
7 months ago
data: {
"username": username,
"password": aesEncrypt(password),
"captcha": captcha
},
async: false,
success: function (result) {
if (result.success) {
if (redirect_url == undefined || redirect_url == null) {
alert("参数redirect_url不能为空");
return false;
}
if (redirect_url.indexOf("?") == -1) {
window.location.href = redirect_url
+ "?ds_sso_sessionid=" + result.sessionId;
} else {
window.location.href = redirect_url
+ "&ds_sso_sessionid=" + result.sessionId;
}
} else {
showError(result.msg);
}
}
});
}
}
//用户登录检查
function userLoginCheck(username, password, captcha) {
if (username == null || username == "") {
showError("用户名不允许为空!");
return false;
}
if (password == null || password == "") {
showError("密码不允许为空!");
return false;
}
if (captcha == null || captcha == "") {
showError("验证码不允许为空!");
return false;
}
return true;
}
//开启错误提示
function showError(error) {
$(".form-error").find("label").html(error);
$(".form-error").show();
}
//获取参数
function getUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null)
return unescape(r[2]);
return null;
}
//aes加密
function aesEncrypt(content) {
var srcs = CryptoJS.enc.Utf8.parse(content);
var encrypted = CryptoJS.AES.encrypt(srcs, {mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7});
return encrypted.toString();
}
//刷新验证码
function refreshCaptcha() {
7 months ago
$("#userCaptchaImage").attr("src", "/dsssoserver/web/getCaptcha?id=" + new Date() + Math.floor(Math.random() * 24));
7 months ago
}
//获取默认回调地址
function getDefaultRedirectUrl() {
var DefaultRedirectUrl = "";
$.ajax({
type: "GET",
dataType: "json",
7 months ago
url: "/dsssoserver/web/getDefaultRedirectUrl",
7 months ago
async: false,
success: function (result) {
if (result.success) {
DefaultRedirectUrl = result.defaultRedirectUrl;
}
}
});
return DefaultRedirectUrl;
}
$('.backLogin').click(
function () {
$('.login-normal').show();
$('.loginV2').show();
$('.shortLogin').hide();
$('.form-error').hide();
7 months ago
$("#userCaptchaImage").attr("src", "/dsssoserver/web/getCaptcha?id=" + new Date() + Math.floor(Math.random() * 24));
7 months ago
});
//获取页面信息
function getPageInfo() {
$.ajax({
type: "POST",
dataType: "json",
url: "/dsssoserver/common/getGlobalValueByKey",
data: {
"key": "sso_system_name,sso_copyright"
},
async: false,
success: function (result) {
if (result.success) {
$("#system_name").html(result.sso_system_name);
$("#copyright").html(result.sso_copyright);
$('title').html(result.sso_system_name);
}
}
});
}
</script>
</html>