123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- Namespace.register("U.MD.U.L"); //用户登录的命名空间
- /*
- 问题:
- 1、验证码的接口问题
- 2、无窗体的接口
- */
- //#region 配置数据
- //U.MD.U.L.loginCallBack; //登录后的回调使用
- //U.MD.U.L.isLogining = false; //判断用户登录状态。cookie登录状态为cookie,账号登录为true,没有登录为false
- //#endregion
- //#region 登录
- U.MD.U.L.init = function () {
- var _parent = $("#U_MD_U_L_login"); //登录注册框
- var _child = _parent.Child(); //获取登录注册找回密码的div
- _child[1].style.display = "none"; //隐藏注册框
- _child[2].style.display = "block"; //显示登录
- _child[3].style.display = "none"; //隐藏找回密码
- //标题修改
- $("div", _child[0])[2].innerHTML = "登录";
- //头部设置内容
- var _head = $(_child[0]).childs()[1];
- $(_head).addAttrArray({
- innerHTML: "",
- "className": "",
- title: ""
- });
- var _username = U.UF.Cookie.get("usestudiosso", "username")[0]; //上次登录的用户名
- var _input = $("input", _child[2]);
- if (_username) { //cookie存在 登录处理
- _input[0].focus(); //聚焦处理
- _input[0].value = _username; //设置cookie用户名
- _input = _input[1]; //当前需要聚焦
- }
- else { //注册 找回密码 聚焦元素处理
- _input = _input[0];
- }
- _input.focus();
- }
- /**
- * 判断用户是否登录如果未登陆则弹出登陆框
- * @param {element} 输入框
- * @param {element} 确定框
- *
- */
- U.MD.U.L.loginEnter = function (inputel, bottomel) {
- var i,
- _parentel = $(inputel).Parent(3), //获取父亲层
- _inputs = $("input", _parentel); //获取所有的输入框
- //循环input
- for (i = 0; i < _inputs.length; i++) {
- if (_inputs[i].value == "") { //如果没有输入文字的处理
- _inputs[i].focus();
- return;
- }
- }
- //回车处理
- bottomel.onclick();
- }
- //#endregion
- //#region 登录数据使用
- /**
- * 1473桌面直接登录,单击登录按钮时触发的函数
- * @param {object} ajax返回值
- *
- */
- U.MD.U.L.clickLogin = function (bottomel) {
- var _parentel = $(bottomel).Parent(), //类名为"U_MD_U_L_T"的div元素
- _inputel = $("input", _parentel), //获取里面的input,共三个
- _username = _inputel[0].value, //第一个input为用户名
- _password = _inputel[1].value, //第二个input为密码
- _static = _inputel[2].checked ? "1" : "0"; //第三个input为状态
- //以前已经登录过,则直接跳转回调函数
- if (_username && _username == US.userInfo.username) {
- $("#U_MD_HomeC_Pop")[0].close(); //关闭登陆款
- }
- //以前没有登录过,则清空密码输入 等待用户登录
- else if (U.MD.U.L.loginAjax(_username, _password, _static, $(_parentel).Parent())) {
- _inputel[1].value = ""; //密码清空
- }
- }
- /*
- 功能:用户登录云端接口,向后台发送请求,记录用户名和密码,后面还有一个登陆获取用户个人信息。好友信息,及消息通知
- 参数一:用户名
- 参数二:密码
- 参数三:登录窗口div元素,做loading的位置
- 参数四:回调函数
- */
- U.MD.U.L.loginAjax = function (username, password, static, loading, fun) {
- var _logaddress = US.city.userAllLocation || ""; //登录地址;
- //加载用户信息 且进行异步处理
- if (username.removeP() && password.removeP()) {
- if (fun) { U.MD.U.L.loginCallBack = fun; } //设置回调函数
- U.MD.U.L.isLogining = true; //电脑卡的时候,用户一直点登录,此处判断用户是否已经按下了登录按钮。
- //此处指返回用户基本信息,
- U.A.Request(US.USER, ["UserLogin", username, password, static], U.MD.U.L.asynLoginAjax, [loading, _logaddress, username, password]);
- return true;
- }
- }
- /**
- * 用户登录执行事件
- * @param {object} ajax返回的对象
- * @param {boolean} 是否是cookie登陆
- *
- */
- U.MD.U.L.asynLoginAjax = function (r, iscookie) {
- if ($('#U_MD_U_L_Login_B')[0]) {
- $('#U_MD_U_L_Login_B')[0].innerHTML = '登录';
- }
- if (U.MD.U.L.loginCallBack) {
- U.MD.U.L.loginCallBack(r, iscookie); //回调处理
- }
- }
- /**
- * 判断用户名是否符合要求
- *
- */
- U.MD.U.L.checkUserName = function (inputel) {
- var _username = inputel.value; //获取用户名
- //输入为空不做变化
- $('.U_MD_U_L_Box_B').removeClass('U_MD_U_L_Box_mistakeBorder');
- if ($('.U_MD_U_L_Box_checkUseNameFormat')[0]) {//检测账号格式提示是否存在
- $('.U_MD_U_L_Box_checkUseNameFormat')[0].parentNode.removeChild($('.U_MD_U_L_Box_checkUseNameFormat')[0]);
- }
- if (_username == "") {
- U.MD.U.R.setInputStyle(inputel, { "display": "block", 'textAlign': 'left', 'marginRight': '0px' }, "用户账号"); //输入的用户名为空的样式处理
- return false;
- }
- //注册的用户不符合要求
- else if (!U.UF.S.UserName.test(_username)) {
- $$("div", { className: 'checkUseNameFormat' }, $(".U_MD_U_L_Box_B")[0]);
- $('.U_MD_U_L_Box_B').addClass(" U_MD_U_L_Box_mistakeBorder");
- U_MD_U_L_createFormat($('.U_MD_U_L_LB')[1], $('.U_MD_U_L_Box_P_B')[1]);
- //U.MD.U.R.setInputStyle(inputel, { "display": "block", 'textAlign': 'right', 'marginRight': '15px' }, "2-10汉字或4-20字符"); //注册用户名不符合提示
- return false;
- }
- return true;
- }
- /**
- *创建用户账号是否标准提醒
- *
- */
- U_MD_U_L_createFormat = function (parentnode, beforenode) {
- if ($('.U_MD_U_L_Box_checkUseNameFormat')[0]) {
- $('.U_MD_U_L_Box_checkUseNameFormat')[0].parentNode.removeChild($('.U_MD_U_L_Box_checkUseNameFormat')[0]);
- }
- var _format = document.createElement('div');
- _format.className = "U_MD_U_L_Box_checkUseNameFormat";
- _format.innerText = "2-10汉字或4-20字符";
- parentnode.insertBefore(_format, beforenode);
- }
- /**
- * 判断用户名是否符合要求
- *
- */
- U.MD.U.L.checkpassword = function (inputel) {
- var _password = inputel.value; //获取用户名
- //输入为空不做变化
- if (_password == "") {
- U.MD.U.R.setInputStyle(inputel, { "display": "block", 'textAlign': 'left', 'marginRight': '0px' }, "用户密码"); //输入的用户名为空的样式处理
- }
- }
- //#endregion
|