define(['jquery', 'toastr', 'form', 'template'], function ($, toastr, Form, Template) { var csmadmin = { /** 渲染钉钉登录二维码 * @usage: * var ddappid = $("#ddappid").val(); var hosturl = $("#hosturl").val(); var url = hosturl+Fast.api.fixurl("csmadmin/csmadminapp/sendddlogintmpcode"); csmadmin.renderDDQrcode(ddappid,url); */ renderDDQrcode:function(ddappid,redirecturl){ requirejs(['https://g.alicdn.com/dingding/dinglogin/0.0.5/ddLogin.js'], function(ddLogin){ var url = encodeURIComponent(redirecturl); var goto = encodeURIComponent('https://oapi.dingtalk.com/connect/oauth2/sns_authorize?appid='+ddappid+'&response_type=code&scope=snsapi_login&state=STATE&redirect_uri='+url); var obj = DDLogin({ id:"login_container", goto: goto, style: "border:none;background-color:#FFFFFF;", width : "365", height: "400" }); var handleMessage = function (event) { var origin = event.origin; console.log("origin", event.origin); if( origin == "https://login.dingtalk.com" ) { // 判断是否来自ddLogin扫码事件。 var loginTmpCode = event.data; // 拿到loginTmpCode后就可以在这里构造跳转链接进行跳转了 console.log("loginTmpCode", loginTmpCode); window.location = 'https://oapi.dingtalk.com/connect/oauth2/sns_authorize?appid='+ddappid+'&response_type=code&scope=snsapi_login&state=STATE&redirect_uri=' + url + '&loginTmpCode=' + loginTmpCode; } }; if (typeof window.addEventListener != 'undefined') { window.addEventListener('message', handleMessage, false); } else if (typeof window.attachEvent != 'undefined') { window.attachEvent('onmessage', handleMessage); } }); }, //修改手机前,发送短信(需验证码确认,以防止被攻击) triggerBtnModifyMobile:function(btnjqstr,mobile,event,sendedfunc){ var that = this; //v1.2.0 修复部分服务器下手机号码登录验证码无法显示的问题 //var captchaimg = Fast.api.cdnurl("/captcha.html"); var captchaimg = Fast.api.fixurl("/index.php?s=/captcha"); var myreg=/^[1][3,4,5,7,8][0-9]{9}$/; if (!myreg.test(mobile)) { Toastr.error("请输入正确的手机号码"); return; } Layer.open({ title: '验证码', content: '\