| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401 |
- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <%@page import="org.jeecgframework.core.util.SysThemesUtil,org.jeecgframework.core.enums.SysThemesEnum"%>
- <%@include file="/context/mytags.jsp"%>
- <%
- session.setAttribute("lang","zh-cn");
- SysThemesEnum sysTheme = SysThemesUtil.getSysTheme(request);
- String lhgdialogTheme = SysThemesUtil.getLhgdialogTheme(sysTheme);
- %>
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
- <meta charset="utf-8" />
- <title><t:mutiLang langKey="jeect.platform"/></title>
- <link rel="shortcut icon" href="images/favicon.ico">
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
- <!-- bootstrap & fontawesome -->
- <link rel="stylesheet" href="plug-in/ace/css/bootstrap.css" />
- <link rel="stylesheet" href="plug-in/ace/css/font-awesome.css" />
- <link rel="stylesheet" type="text/css" href="plug-in/accordion/css/accordion.css">
- <!-- text fonts -->
- <link rel="stylesheet" href="plug-in/ace/css/ace-fonts.css" />
- <link rel="stylesheet" href="plug-in/ace/css/jquery-ui.css" />
- <!-- ace styles -->
- <link rel="stylesheet" href="plug-in/ace/css/ace.css" class="ace-main-stylesheet" id="main-ace-style" />
- <!--[if lte IE 9]>
- <link rel="stylesheet" href="plug-in/ace/css/ace-part2.css" class="ace-main-stylesheet" />
- <![endif]-->
- <!--[if lte IE 9]>
- <link rel="stylesheet" href="plug-in/ace/css/ace-ie.css" />
- <![endif]-->
- <!-- ace settings handler -->
- <script src="plug-in/ace/js/ace-extra.js"></script>
- <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
- <!--[if lte IE 8]>
- <script src="plug-in/ace/js/html5shiv.js"></script>
- <script src="plug-in/ace/js/respond.js"></script>
- <![endif]-->
- </head>
- <body class="login-layout light-login">
- <div class="main-container">
- <div class="main-content">
- <div class="row">
- <div class="col-sm-10 col-sm-offset-1">
- <div class="login-container">
- <div class="center">
- <h1 id="id-text2" class="grey">
- <i class="ace-icon fa fa-leaf green"></i>
- JEECG 演示系统
- </h1>
- <h4 class="blue" id="id-company-text">www.jeecg.org</h4>
- </div>
- <div class="space-6"></div>
- <div class="position-relative">
- <div id="login-box" class="login-box visible widget-box no-border">
- <div class="widget-body">
- <!--update-begin--Author:zhangliang Date:20170628 for:TASK #2116 【性能问题】优化登录逻辑---------------------->
- <form id="loinForm" class="form-horizontal" method="post">
- <!--update-end--Author:zhangliang Date:20170628 for:TASK #2116 【性能问题】优化登录逻辑---------------------->
- <!-- add-begin--Author:zhoujf Date:20170602 for:单点登录 -->
- <input type="hidden" id="ReturnURL" name="ReturnURL" value="${ReturnURL }"/>
- <!-- add-end--Author:zhoujf Date:20170602 for:单点登录 -->
- <div class="widget-main">
- <div class="alert alert-warning alert-dismissible" role="alert" id="errMsgContiner">
- <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
- <div id="showErrMsg"></div>
- </div>
- <h4 class="header blue lighter bigger">
- <i class="ace-icon fa fa-coffee green"></i>
- 用户登录
- </h4>
- <div class="space-6"></div>
- <label class="block clearfix">
- <span class="block input-icon input-icon-right">
- <input type="text" name="userName" class="form-control" placeholder="请输入用户名" id="userName" value="admin"/>
- <i class="ace-icon fa fa-user"></i>
- </span>
- </label>
- <label class="block clearfix">
- <span class="block input-icon input-icon-right">
- <input type="password" name="password" class="form-control" placeholder="请输入密码" id="password" value="123456"/>
- <i class="ace-icon fa fa-lock"></i>
- </span>
- </label>
- <label class="block clearfix">
- <!-- <div class="input-group">
- <input type="text" style="width:150px" name="randCode" class="form-control" placeholder="请输入验证码" id="randCode"/>
- <span class="input-group-addon" style="padding: 0px;"><img id="randCodeImage" src="randCodeImage" /></span>
- </div> -->
-
- <!-- 开发临时修改 -->
- <div class="input-group" style="display: none">
- <input type="text" style="width:150px" name="randCode" class="form-control" placeholder="请输入验证码" id="randCode" value=""/>
- <span class="input-group-addon" style="padding: 0px;"><img id="randCodeImage" src="randCodeImage" /></span>
- </div>
-
- </label>
- <div class="space"></div>
- <div class="clearfix">
- <label class="inline">
- <input type="checkbox" class="ace" id="on_off" name="remember" value="yes"/>
- <span class="lbl">记住用户名</span>
- </label>
- <span> | <a href="mLoginController.do?login&from=singlemessage&isappinstalled=0"><i class="ace-icon fa fa-location-arrow"></i><font color='#428bca'>移动OA</font></a></span>
- <button type="button" id="but_login" onclick="checkUser()" class="width-35 pull-right btn btn-sm btn-primary">
- <i class="ace-icon fa fa-key"></i>
- <span class="bigger-110" >登录</span>
- </button>
- </div>
- <div class="space-4"></div>
- </div>
- <div class="toolbar clearfix">
- <div style="float: right">
- <a href="#" class="forgot-password-link">
- 语言
- <i class="ace-icon fa fa-arrow-right"></i>
- <t:dictSelect id="langCode" field="langCode" typeGroupCode="lang" hasLabel="false" extendJson="{style:'padding:2px; width:80px;'}" defaultVal="zh-cn"></t:dictSelect>
- </a>
- </div>
- </div>
- </form>
- </div>
- </div>
- <div class="center"><h4 class="blue" id="id-company-text">© JEECG版权所有 v_3.7</h4></div>
- <div class="navbar-fixed-top align-right">
- <br />
-
- <a id="btn-login-dark" class="blue" href="#" onclick="darkStyle()">Dark</a>
-
- <span class="blue">/</span>
-
- <a id="btn-login-blur" class="blue" href="#" onclick="blurStyle()">Blur</a>
-
- <span class="blue">/</span>
-
- <a id="btn-login-light" class="blue" href="#" onclick="lightStyle()">Light</a>
-
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- <script type="text/javascript" src="plug-in/jquery/jquery-1.9.0.min.js"></script>
- <script type="text/javascript" src="plug-in/jquery/jquery.cookie.js"></script>
- <script type="text/javascript" src="plug-in/mutiLang/en.js"></script>
- <script type="text/javascript" src="plug-in/mutiLang/zh-cn.js"></script>
- <script type="text/javascript" src="plug-in/login/js/jquery.tipsy.js"></script>
- <script type="text/javascript" src="plug-in/login/js/iphone.check.js"></script>
- <!-- add-begin--Author:gengjiajia Date:20160727 for:TASK #1217 【IE兼容】jeecg h+首页兼容性问题,不兼容的浏览器直接切换套shortcut风格 -->
- <script type="text/javascript" src="plug-in/login/js/login.js"></script>
- <!-- add-end--Author:gengjiajia Date:20160727 for:TASK #1217 【IE兼容】jeecg h+首页兼容性问题,不兼容的浏览器直接切换套shortcut风格 -->
- <script type="text/javascript">
- $(function(){
- optErrMsg();
- });
- $("#errMsgContiner").hide();
- function optErrMsg(){
- $("#showErrMsg").html('');
- $("#errMsgContiner").hide();
- }
- //输入验证码,回车登录
- $(document).keydown(function(e){
- if(e.keyCode == 13) {
- //update-begin--Author:weict Date:20170512 for:TASK #1958 【bug】jeecg 登录bug--------------------
- setTimeout("$('#but_login').click()","100");
- //update-end--Author:weict Date:20170512 for:TASK #1958 【bug】jeecg 登录bug----------------------
- }
- });
- //验证用户信息
- function checkUser(){
- if(!validForm()){
- return false;
- }
- newLogin();
- }
- //表单验证
- function validForm(){
- if($.trim($("#userName").val()).length==0){
- showErrorMsg("请输入用户名");
- return false;
- }
- if($.trim($("#password").val()).length==0){
- showErrorMsg("请输入密码");
- return false;
- }
- if($.trim($("#randCode").val()).length==0){
- showErrorMsg("请输入验证码");
- return false;
- }
- return true;
- }
- //登录处理函数
- function newLogin(orgId) {
- setCookie();
- //update-begin--Author:zhangliang Date:20170628 for:TASK #2116 【性能问题】优化登录逻辑
- var actionurl="loginController.do?login";//提交路径
- var checkurl="loginController.do?checkuser";//验证路径
- //update-end--Author:zhangliang Date:20170628 for:TASK #2116 【性能问题】优化登录逻辑
- var formData = new Object();
- var data=$(":input").each(function() {
- formData[this.name] =$("#"+this.name ).val();
- });
- formData['orgId'] = orgId ? orgId : "";
- //语言
- formData['langCode']=$("#langCode").val();
- formData['langCode'] = $("#langCode option:selected").val();
- $.ajax({
- async : false,
- cache : false,
- type : 'POST',
- url : checkurl,// 请求的action路径
- data : formData,
- error : function() {// 请求失败处理函数
- },
- success : function(data) {
- var d = data; // ------ $.parseJSON(data);
- if (d.success) {
- if (d.attributes.orgNum > 1) {
- //用户拥有多个部门,需选择部门进行登录
- var title, okButton;
- if($("#langCode").val() == 'en') {
- title = "Please select Org";
- okButton = "Ok";
- } else {
- title = "请选择所属部门";
- okButton = "确定";
- }
- $.dialog({
- id: 'LHG1976D',
- title: title,
- max: false,
- min: false,
- drag: false,
- resize: false,
- content: 'url:userController.do?userOrgSelect&userId=' + d.attributes.user.id,
- lock:true,
- button : [ {
- name : okButton,
- focus : true,
- callback : function() {
- iframe = this.iframe.contentWindow;
- var orgId = $('#orgId', iframe.document).val();
- //update-begin---author:scott---date:20160529--for:变更采用ajax方式提高效率----
- formData['orgId'] = orgId ? orgId : "";
- $.ajax({
- async : false,
- cache : false,
- type : 'POST',
- url : 'loginController.do?changeDefaultOrg',// 请求的action路径
- data : formData,
- error : function() {// 请求失败处理函数
- },
- success : function(data) {
- window.location.href = actionurl;
- }
- });
- //update-begin---author:scott---date:20160529--for:变更采用ajax方式提高效率----
- this.close();
- return false;
- }
- }],
- close: function(){
- setTimeout("window.location.href='"+actionurl+"'", 10);
- }
- });
- } else {
- window.location.href = actionurl;
- }
- } else {
- showErrorMsg(d.msg);
- //update-begin--Author:xuelin Date:20170328 for:[#1822]【体验问题】登录页面,当密码或验证错误的时候 让这验证码自动刷新--------------------
- if(d.msg === "用户名或密码错误" || d.msg === "验证码错误")
- reloadRandCodeImage();
- GetSessionCode();
- //update-end--Author:xuelin Date:20170328 for:[#1822]【体验问题】登录页面,当密码或验证错误的时候 让这验证码自动刷新----------------------
- }
- }
- });
- }
- //登录提示消息显示
- function showErrorMsg(msg){
- $("#errMsgContiner").show();
- $("#showErrMsg").html(msg);
- window.setTimeout(optErrMsg,3000);
- }
- /**
- * 刷新验证码
- */
- $('#randCodeImage').click(function(){
- reloadRandCodeImage();
- GetSessionCode();
- });
- function reloadRandCodeImage() {
- var date = new Date();
- var img = document.getElementById("randCodeImage");
- img.src='randCodeImage?a=' + date.getTime();
- //console.log(img.src);
- }
- /**
- * 异步获取session中的验证码
- */
- function GetSessionCode() {
- $.ajax({
- async : false,
- cache : false,
- type : 'POST',
- url : 'loginController.do?myCode',// 请求的action路径'loginController.do?myCode'
- data : '',
- error : function() {// 请求失败处理函数
- },
- success : function(data) {
- $("#randCode").val(data.substring(1,5));
- //console.log(data.substring(1,5));
- }
- });
- }
- function darkStyle(){
- $('body').attr('class', 'login-layout');
- $('#id-text2').attr('class', 'red');
- $('#id-company-text').attr('class', 'blue');
- e.preventDefault();
- }
- function lightStyle(){
- $('body').attr('class', 'login-layout light-login');
- $('#id-text2').attr('class', 'grey');
- $('#id-company-text').attr('class', 'blue');
- e.preventDefault();
- }
- function blurStyle(){
- $('body').attr('class', 'login-layout blur-login');
- $('#id-text2').attr('class', 'white');
- $('#id-company-text').attr('class', 'light-blue');
- e.preventDefault();
- }
- //设置cookie
- function setCookie()
- {
- if ($('#on_off').val() == '1') {
- $("input[iscookie='true']").each(function() {
- $.cookie(this.name, $("#"+this.name).val(), "/",24);
- $.cookie("COOKIE_NAME","true", "/",24);
- });
- } else {
- $("input[iscookie='true']").each(function() {
- $.cookie(this.name,null);
- $.cookie("COOKIE_NAME",null);
- });
- }
- }
- //读取cookie
- function getCookie()
- {
- var COOKIE_NAME=$.cookie("COOKIE_NAME");
- if (COOKIE_NAME !=null) {
- $("input[iscookie='true']").each(function() {
- $($("#"+this.name).val( $.cookie(this.name)));
- if("admin" == $.cookie(this.name)) {
- $("#randCode").focus();
- } else {
- $("#password").val("");
- $("#password").focus();
- }
- });
- $("#on_off").attr("checked", true);
- $("#on_off").val("1");
- }
- else
- {
- $("#on_off").attr("checked", false);
- $("#on_off").val("0");
- $("#randCode").focus();
- }
- }
-
- $(document).ready(function(){
- GetSessionCode();
- });
- </script>
- <%=lhgdialogTheme %>
- </body>
- </html>
|