form.inc.php 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. function checkmobile($field, $value, $fieldinfo) {
  2. $errortips = L('please_input_mobile');
  3. if(defined('IN_ADMIN')) {
  4. $string = "<div id='mobile_div'><input type='text' name='info[mobile]' id='mobile' value='".$value."' size='36' class='input-text'></div>";
  5. $this->formValidator .= '$("#'.$field.'").formValidator({onshow:"'.$errortips.'",onfocus:"'.$errortips.'"}).inputValidator({min:1,onerror:"'.$errortips.'"});';
  6. } elseif($value && ROUTE_A!='register') {
  7. $string = "<div id='mobile_div'>".$value."</div>";
  8. } else {
  9. $string = "<div id='mobile_div'><input type='text' name='info[mobile]' id='mobile' value='' size='36' class='input-text' title='".L('sms_tips')."'>
  10. <div class='submit'><button onclick='get_verify()' type='button' class='hqyz'>".L('get_sms_code')."</button></div> <div id='mobileTip' class='onShow'></div>
  11. <br>
  12. </div><div id='mobile_send_div' style='display:none'>".L('sms_checkcode_send_to')."<span id='mobile_send'></span>,<span id='edit_mobile' style='display:none'><a href='javascript:void();' onclick='edit_mobile()'>".L('sms_edit_mobile')."</a>,</span> ".L('repeat_send')."<br><br>
  13. <div class='submit'><button type='button' id='GetVerify' onclick='get_verify()' class='hqyz'>".L('repeat_sms_code')."</button></div> <BR><BR></div>".L('receive_sms_code')."<input type='text' name='mobile_verify' id='mobile_verify' value='' size='14' class='input-text'>";
  14. $this->formValidator .= '$("#'.$field.'").formValidator({onshow:"'.$errortips.'",onfocus:"'.$errortips.'"}).inputValidator({min:1,onerror:"'.$errortips.'"});';
  15. $errortips = L('input_receive_sms_code');
  16. $this->formValidator .= '$("#mobile_verify").formValidator({onshow:"'.$errortips.'",onfocus:"'.$errortips.'"}).inputValidator({min:1,onerror:"'.$errortips.'"}).ajaxValidator({
  17. type : "get",
  18. url : "api.php",
  19. data :"op=sms_idcheck&action=id_code",
  20. datatype : "html",
  21. getdata:{mobile:"mobile"},
  22. async:"false",
  23. success : function(data){
  24. if( data == "1" ) {
  25. return true;
  26. } else {
  27. return false;
  28. }
  29. },
  30. buttons: $("#dosubmit"),
  31. onerror : "'.L('checkcode_wrong').'",
  32. onwait : "'.L('connecting_please_wait').'"
  33. });';
  34. }
  35. $string .= '
  36. <SCRIPT LANGUAGE="JavaScript">
  37. <!--
  38. var times = 90;
  39. var isinerval;
  40. function get_verify() {
  41. var mobile = $("#mobile").val();
  42. var partten = /^1[3-9]\d{9}$/;
  43. if(!partten.test(mobile)){
  44. alert("'.L('input_right_mobile').'");
  45. return false;
  46. }
  47. $.get("api.php?op=sms",{ mobile: mobile,random:Math.random()}, function(data){
  48. if(data=="0") {
  49. $("#mobile_send").html(mobile);
  50. $("#mobile_div").css("display","none");
  51. $("#mobile_send_div").css("display","");
  52. times = 90;
  53. $("#GetVerify").attr("disabled", true);
  54. isinerval = setInterval("CountDown()", 1000);
  55. } else if(data=="-1") {
  56. alert("'.L('sms_have_reached_the_limit').'");
  57. } else {
  58. alert("'.L('sms_send_fail').'");
  59. }
  60. });
  61. }
  62. function CountDown() {
  63. if (times < 1) {
  64. $("#GetVerify").html("'.L('get_sms_code').'").attr("disabled", false);
  65. $("#edit_mobile").css("display","");
  66. clearInterval(isinerval);
  67. return;
  68. }
  69. $("#GetVerify").html(times+"'.L('wait_second_repeat_sms_code').'");
  70. times--;
  71. }
  72. function edit_mobile() {
  73. $("#mobile_div").css("display","");
  74. $("#mobile_send_div").css("display","none");
  75. }
  76. //-->
  77. </SCRIPT>
  78. ';
  79. return $string;
  80. }