静态页面
<link rel="stylesheet" href="__MOBILE__/css/wenStyle.css"/>
<style>
body{position: relative;}
input::-webkit-input-placeholder {color: #333; }
input:-moz-placeholder {color: #333; }
input::-moz-placeholder { color: #333; }
input:-ms-input-placeholder {color: #333; }
.big_width100{background: #FBF8EF;margin: 0;}
.language{padding: .3rem;}
.yuyan{margin-left: 5.2rem;}
.inp {border: 1px solid gray;padding: 0 10px;width: 200px;height: 30px;font-size: 18px;}
.btn {border: 1px solid gray;width: 100px;height: 30px;font-size: 18px; cursor: pointer;}
#embed-captcha {width: 272px;margin: 0 auto;}
#embed-captcha div{max-width: 5.44rem;}
#embed-captcha .geetest_radar_tip_content{margin-left: .7rem;}
.show {width: 100%; height: .6rem; text-align: center; line-height: .6rem;}
.hide {display: none;}
#notice {color: red;}
.geetest_radar_btn , .geetest_ghost_success{margin-top:.2rem;}
#embed-captcha{width: 5.44rem;}
.extra_reg a{color: #333;}
.register-title{padding:.3rem 0; background: #0ca2e8; font-size: .4rem;}
.yuyan select{color: #333;}
</style>
{/block}
{block name="content"}
<div class="login-container register-container">
<div class="register-title">{:lang('用户注册')}</div>
<div class="yuyan">
<select class='btn'>
<option value=''>语言</option>
<option value='cn' {if $lang=='zh-cn'} selected="selected" {/if}>中</option>
<option value='en' {if $lang=='en-us'} selected="selected" {/if}>ENG</option>
<option value='vi' {if $lang=='vi'} selected="selected" {/if}>Tiếng Việt</option>
</select>
</div>
<div class="formbox">
<form name="AddUser" action="" id="registerForm" class="formrgister" method="get">
<div class="input_box">
<i class="iconfont icon-iconfontdianhua"></i>
{if $smsid == 2}
<select class='area'>
{foreach $area as $v}
<option value='{$v.area}'>{:lang($v.areaname)}</option>
{/foreach}
</select>
{/if} <input type="number" name="mobile" class="phone_number" placeholder="{:lang('输入手机号码')}" id="number"/>
</div>
<div class="input_box">
<i class="iconfont icon-geren"></i>
<input type="text" name="username" class="username" placeholder="{:lang('昵称')}" autocomplete="off"/>
</div>
<!-- <li><input type="text" name="captcha" id="captcha" placeholder="请输入验证码">
<span class="yzm2"><img src="{:url('admin/login/captcha')}" alt="captcha" onclick="this.src='{:url("admin/login/captcha")}'+'?'+Math.random()" /></span></li> -->
<!-- <div class="input_box code_box" id="captcha-container">
<span class="iconfont icon-verification-code"></span>
<div class="input-code">
<input style="width: 100%;" name="verify" class="captcha-text" placeholder="{:lang('验证码')}" id="j_verify" type="text">
<img alt="图形验证码" src="{:url('mobile/login/captcha')}" title="点击刷新" onclick="this.src='{:url(\'admin/login/captcha\')}'+'?'+Math.random()">
</div>
</div>-->
<div class="input_box">
<i class="iconfont icon-shouji"></i>
<div class="phone-code">
<input style="width: 100%;" type="number" id="code" name="code" class="code" placeholder="{:lang('手机验证码')}" oncontextmenu="return false" onpaste="return false" />
<a href="javascript:void(0)" id="mycode" onclick="sendemail()">{:lang('获取手机验证码')}</a>
</div>
</div>
<div class="input_box">
<i class="iconfont icon-mima"></i>
<input type="password" name="pwd" class="password" placeholder="{:lang('输入登录密码')}" oncontextmenu="return false" onpaste="return false" />
</div>
<div class="input_box">
<i class="iconfont icon-mima1"></i>
<input type="password" name="relogin_pwd" class="confirm_password" placeholder="{:lang('再次输入密码')}" oncontextmenu="return false" onpaste="return false" />
</div>
<div class="input_box">
<i class="iconfont icon-shoujihao1"></i>
<input type="text" name="parent_id" placeholder="{:lang('推荐人手机号码/UID')}" {if condition="$mobile != null"} disabled="disabled" value="{$mobile}" {else /} value="" {/if}>
</div>
<div class="input_box">
<i class="iconfont icon-jiaoyimima"></i>
<input type="password" name="safety_pwd" class="safety_pwd" placeholder="{:lang('交易密码')}" oncontextmenu="return false" onpaste="return false" />
</div>
<!-- <div id="embed-captcha"></div> -->
<!-- <p id="wait" class="show">正在加载验证码......</p> -->
<!-- <p id="notice" class="hide">请先完成验证</p> -->
<!-- {:token()} -->
<div class="inde-btn">
<button id="login_submit embed-submit" type="button" onclick="sendcode()">{:lang('注 册')}</button>
<!-- <div class="submitbox"><input id="login_submit" type="button" value="立即开启"></div> -->
</div>
</form>
</div>
<div class="extra_reg">
<a href="{:url('/mobile/login/login')}" class="inde-reg">{:lang('已经有账号?返回登录')}</a>
</div>
</div>
<link rel="stylesheet" href="__MOBILE__/css/wenStyle.css"/>
<style>
body{position: relative;}
input::-webkit-input-placeholder {color: #333; }
input:-moz-placeholder {color: #333; }
input::-moz-placeholder { color: #333; }
input:-ms-input-placeholder {color: #333; }
.big_width100{background: #FBF8EF;margin: 0;}
.language{padding: .3rem;}
.yuyan{margin-left: 5.2rem;}
.inp {border: 1px solid gray;padding: 0 10px;width: 200px;height: 30px;font-size: 18px;}
.btn {border: 1px solid gray;width: 100px;height: 30px;font-size: 18px; cursor: pointer;}
#embed-captcha {width: 272px;margin: 0 auto;}
#embed-captcha div{max-width: 5.44rem;}
#embed-captcha .geetest_radar_tip_content{margin-left: .7rem;}
.show {width: 100%; height: .6rem; text-align: center; line-height: .6rem;}
.hide {display: none;}
#notice {color: red;}
.geetest_radar_btn , .geetest_ghost_success{margin-top:.2rem;}
#embed-captcha{width: 5.44rem;}
.extra_reg a{color: #333;}
.register-title{padding:.3rem 0; background: #0ca2e8; font-size: .4rem;}
.yuyan select{color: #333;}
</style>
{/block}
{block name="content"}
<div class="login-container register-container">
<div class="register-title">{:lang('用户注册')}</div>
<div class="yuyan">
<select class='btn'>
<option value=''>语言</option>
<option value='cn' {if $lang=='zh-cn'} selected="selected" {/if}>中</option>
<option value='en' {if $lang=='en-us'} selected="selected" {/if}>ENG</option>
<option value='vi' {if $lang=='vi'} selected="selected" {/if}>Tiếng Việt</option>
</select>
</div>
<div class="formbox">
<form name="AddUser" action="" id="registerForm" class="formrgister" method="get">
<div class="input_box">
<i class="iconfont icon-iconfontdianhua"></i>
{if $smsid == 2}
<select class='area'>
{foreach $area as $v}
<option value='{$v.area}'>{:lang($v.areaname)}</option>
{/foreach}
</select>
{/if} <input type="number" name="mobile" class="phone_number" placeholder="{:lang('输入手机号码')}" id="number"/>
</div>
<div class="input_box">
<i class="iconfont icon-geren"></i>
<input type="text" name="username" class="username" placeholder="{:lang('昵称')}" autocomplete="off"/>
</div>
<!-- <li><input type="text" name="captcha" id="captcha" placeholder="请输入验证码">
<span class="yzm2"><img src="{:url('admin/login/captcha')}" alt="captcha" onclick="this.src='{:url("admin/login/captcha")}'+'?'+Math.random()" /></span></li> -->
<!-- <div class="input_box code_box" id="captcha-container">
<span class="iconfont icon-verification-code"></span>
<div class="input-code">
<input style="width: 100%;" name="verify" class="captcha-text" placeholder="{:lang('验证码')}" id="j_verify" type="text">
<img alt="图形验证码" src="{:url('mobile/login/captcha')}" title="点击刷新" onclick="this.src='{:url(\'admin/login/captcha\')}'+'?'+Math.random()">
</div>
</div>-->
<div class="input_box">
<i class="iconfont icon-shouji"></i>
<div class="phone-code">
<input style="width: 100%;" type="number" id="code" name="code" class="code" placeholder="{:lang('手机验证码')}" oncontextmenu="return false" onpaste="return false" />
<a href="javascript:void(0)" id="mycode" onclick="sendemail()">{:lang('获取手机验证码')}</a>
</div>
</div>
<div class="input_box">
<i class="iconfont icon-mima"></i>
<input type="password" name="pwd" class="password" placeholder="{:lang('输入登录密码')}" oncontextmenu="return false" onpaste="return false" />
</div>
<div class="input_box">
<i class="iconfont icon-mima1"></i>
<input type="password" name="relogin_pwd" class="confirm_password" placeholder="{:lang('再次输入密码')}" oncontextmenu="return false" onpaste="return false" />
</div>
<div class="input_box">
<i class="iconfont icon-shoujihao1"></i>
<input type="text" name="parent_id" placeholder="{:lang('推荐人手机号码/UID')}" {if condition="$mobile != null"} disabled="disabled" value="{$mobile}" {else /} value="" {/if}>
</div>
<div class="input_box">
<i class="iconfont icon-jiaoyimima"></i>
<input type="password" name="safety_pwd" class="safety_pwd" placeholder="{:lang('交易密码')}" oncontextmenu="return false" onpaste="return false" />
</div>
<!-- <div id="embed-captcha"></div> -->
<!-- <p id="wait" class="show">正在加载验证码......</p> -->
<!-- <p id="notice" class="hide">请先完成验证</p> -->
<!-- {:token()} -->
<div class="inde-btn">
<button id="login_submit embed-submit" type="button" onclick="sendcode()">{:lang('注 册')}</button>
<!-- <div class="submitbox"><input id="login_submit" type="button" value="立即开启"></div> -->
</div>
</form>
</div>
<div class="extra_reg">
<a href="{:url('/mobile/login/login')}" class="inde-reg">{:lang('已经有账号?返回登录')}</a>
</div>
</div>
{block name="js"}
<script type="text/javascript" src="__MOBILE__/js/jquery.validate.min.js"></script>
<script src="http://apps.bdimg.com/libs/jquery/1.9.1/jquery.js"></script>
<script src="__MOBILE__/js/crowds.js"></script>
<script src="__MOBILE__/js/gt.js"></script>
<script>
$('.btn').change(function(){
var data={'lang':$('.btn').val()}
console.log(data);
$.get("{:url('mobile/Login/lang')}",data,function(){
location.reload();
})
}) $(function(){
$("input[type=text]").keyup(function(){
if($("input[name=mobile]").val() !='' && $("input[name=code]").val() !='' ){
// $("#login_submit").css('background','linear-gradient(to right,#bd3dda,#3c13ce)')
$('#login_submit').attr("onclick", "sendcode()");
}else{
// $("#login_submit").css('background','#2e2a43')
}
});
})
</script>
<script>
var countdown=60;
function sendemail(){
var nickname= $('input[name=username]').val();
var mobile= $('input[name=mobile]').val();
var pwd= $('input[name=pwd]').val();
var verify= $('input[name=verify]').val();
var area=$('.area').val();
var geetest_challenge = $('input[name=geetest_challenge]').val();
var geetest_validate = $('input[name=geetest_validate]').val();
var geetest_seccode = $('input[name=geetest_seccode]').val();
console.log(area);
if(nickname==''){
msg_alert('{:lang("请输入昵称")}!');
}else{
// if(!(/^1[3|4|5|7|8][0-9]\d{4,8}$/.test(number))){
if(mobile==''){
msg_alert('{:lang("请输入手机号")}!');
}else if(verify==''){
msg_alert('{:lang("请输入验证码")}!');
}else if(area==''){
msg_alert('{:lang("请输入区号")}!');
}
} } function settime(obj) { //发送验证码倒计时
if (countdown == 0) {
obj.attr("onclick", "sendemail()");
//obj.removeattr("disabled");
obj.html("{:lang('获取手机验证码')}");
countdown = 60;
return;
} else {
obj.attr("onclick", "null");
obj.html("{:lang('重新发送')}(" + countdown + ")");
countdown--;
}
setTimeout(function() {
settime(obj) }
,1000)
}</script>
<script>
var handlerEmbed = function (captchaObj) {
$("#embed-submit").click(function (e) {
var validate = captchaObj.getValidate();
if (!validate) {
$("#notice")[0].className = "show";
setTimeout(function () {
$("#notice")[0].className = "hide";
}, 2000);
e.preventDefault();
}
});
// 将验证码加到id为captcha的元素里,同时会有三个input的值:geetest_challenge, geetest_validate, geetest_seccode
captchaObj.appendTo("#embed-captcha");
captchaObj.onReady(function () {
$("#wait")[0].className = "hide";
});
// 更多接口参考:http://www.geetest.com/install/sections/idx-client-sdk.html
};
var server_name = '{$server_name}';
$.ajax({ // 获取id,challenge,success(是否启用failback)
url: server_name+"/mobile/login/jiyan?t=" + (new Date()).getTime(), // 加随机数防止缓存
type: "get",
dataType: "json",
success: function (data) {
console.log(data);
// 使用initGeetest接口
// 参数1:配置参数
// 参数2:回调,回调的第一个参数验证码对象,之后可以使用它做appendTo之类的事件
initGeetest({
gt: data.gt,
challenge: data.challenge,
new_captcha: data.new_captcha,
product: "embed", // 产品形式,包括:float,embed,popup。注意只对PC版验证码有效
offline: !data.success // 表示用户后台检测极验服务器是否宕机,一般不需要关注
// 更多配置参数请参见:http://www.geetest.com/install/sections/idx-client-sdk.html#config
}, handlerEmbed);
}
});
function sendcode(){
var phone= $('input[name=mobile]').val();
var pwd= $('input[name=pwd]').val();
var relogin_pwd= $('input[name=relogin_pwd]').val();
var code= $('input[name=code]').val();
var parent_id= $('input[name=parent_id]').val();
var nickname= $('input[name=username]').val();
var safety_pwd= $('input[name=safety_pwd]').val();
var geetest_challenge = $('input[name=geetest_challenge]').val();
var geetest_validate = $('input[name=geetest_validate]').val();
var geetest_seccode = $('input[name=geetest_seccode]').val();
if(pwd != relogin_pwd){
msg_alert('{:lang("两次输入密码不一致")}!');
return false;
}else if(pwd=='' || !(/^.{6,}$/.test(pwd))){
msg_alert('{:lang("请输入6位密码")}!');
return false;
}else if(!(/^\d{6}\b/).test(safety_pwd)){
msg_alert('{:lang("交易密码只能为6位数")}');
return false;
}else if(parent_id == ''){
msg_alert('{:lang("请输入推荐人")}');
return false;
}else{ // $('input[name=relogin_pwd]').next('span').html("");
$.post("{:url('/mobile/login/doregister')}",{code:code,phone:phone,pwd:pwd,parent_id:parent_id,nickname:nickname,safety_pwd:safety_pwd,geetest_challenge:geetest_challenge,geetest_validate:geetest_validate,geetest_seccode:geetest_seccode},function(data){
if(data.code==1){
msg_alert_url(data.msg,data.url);
}else{
msg_alert(data.msg);
}
})
}
}
</script>