yqb
Version:
Static Package Manager
125 lines (117 loc) • 4.18 kB
JavaScript
/*
* 短信发送模块
* author: <%= author %>
* version: <%= version %>
* website: http://www.431103.com
*/
(function(root, factory) {
if (typeof exports === 'object') {
factory(exports);
} else if (typeof define === 'function' && define.amd) {
define(['exports'], factory);
} else {
factory(root);
}
}(this, function(exports) {
var sendSMS = function(element) {
var self = this;
$("#otpControl").otpNew({
"otpService": {
apiRoot: until.getMTPURL(),
},
// 默认事件侦听器
eventListener: function(event) {
var type = event.type;
var message = event.message;
switch (type) {
case "captchaShow":
// 显示图片验证码
setTimeout(function() {
$('#captcha-control').tips({
content: '需要正确的图片验证码,才能发送短信验证码'
});
}, 0)
break;
case "tokenFlushed":
break;
case "OTPSending":
break;
}
},
// 允许OTP 发送成功回调客户端指定的函数
otpHasPassedCallback: function(result) {
$('#msgId').val(result.data.msgId);
},
// 允许OTP 发送失败回调客户端指定的函数
otpErrorsCallback: function(code, message) {
switch (code) {
case "captcha_refreshed_failed":
break;
case "token_flushed_failed":
$('#captcha-control').tips('update', 'content', message);
$('#captcha-control').tips('show');
break;
case "mobile_invalid":
$('#mobile-control').tips({
content: message
});
break;
case "1026":
$('#mobile-control').tips({
content: message
});
break;
case "2022":
$('#mobile-control').tips({
content: message
});
break;
case "1361":
$('#mobile-control').tips({
content: message
});
break;
}
},
getExtraData: function() {
return {
businessId: $('.paf_register_module').data('businessid'),
channelId: $('.paf_register_module').data('channelid')
}
}
});
}
sendSMS.prototype = {
checkMobile: function() {
var phone = $.trim($('#mobile-input').val());
var regex = /^(1[^012][0-9]{9})$/i;
if (phone == '') {
$('#mobile-control').tips({
content: '请输入手机号'
})
return false;
}
if (!regex.test(phone)) {
$('#mobile-control').tips({
content: '手机号码格式不正确'
})
return false;
} else {
return true;
}
},
verifyOtp: function() {
var otpNum = $.trim($('#otp-input').val());
if (otpNum == '') {
$('#otp-input').tips({
content: '请输入验证码'
})
return false;
} else {
return true;
}
}
}
exports.sendSMS = sendSMS;
return sendSMS;
}));