open.php 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317
  1. <?php
  2. /* @var $this \yii\web\View */
  3. use yii\helpers\Url;
  4. $this->title = '真实账户申请';
  5. ?>
  6. <?php $this->beginBlock('header_script'); ?>
  7. <style>
  8. .cover {
  9. width: 100%;
  10. height: 190px;
  11. }
  12. .fileinput-button {
  13. position: relative;
  14. display: inline-block;
  15. overflow: hidden;
  16. width: 100%;
  17. height: 190px;
  18. text-align: center;
  19. border: 1px solid #DDD;
  20. }
  21. .fileinput-button .s {
  22. margin-top: 60px;
  23. font-size: 40px;
  24. }
  25. .fileinput-button input {
  26. position: absolute;
  27. right: 0px;
  28. top: 0px;
  29. opacity: 0;
  30. -ms-filter: 'alpha(opacity=0)';
  31. font-size: 100em;
  32. }
  33. .success {
  34. display: none;
  35. margin: 100px 0px;
  36. text-align: center;
  37. }
  38. .success h1 {
  39. color: #1ab394;
  40. }
  41. .wx {
  42. margin: 50px;
  43. text-align: center;
  44. }
  45. .icheckbox_square-green label.error {
  46. position: absolute;
  47. white-space: nowrap;
  48. top: 0;
  49. left: 280px;
  50. }
  51. .icheckbox_square-green input.error {
  52. background-color: #FBE3E4;
  53. }
  54. </style>
  55. <?php $this->endBlock(); ?>
  56. <div class="ibox">
  57. <div class="ibox-title">
  58. <h2>真实账户申请</h2>
  59. </div>
  60. <div class="ibox-content">
  61. <form id="form">
  62. <div class="row">
  63. <div class="col-sm-7 b-r">
  64. <div id="result" class="success">
  65. <h1><i class="fa fa-check"></i>申请成功,请等待审核</h1>
  66. <p>申请结果会以邮件形式通知您,谢谢!</p>
  67. </div>
  68. <div id="req">
  69. <p>上传身份证照片</p>
  70. <div class="row">
  71. <div class="col-sm-6">
  72. <img class="cover" id="cover0" src="<?= STATIC_URL ?>/ui/img/id_cover0.jpg">
  73. </div>
  74. <div class="col-sm-6">
  75. <div class="fileinput-button">
  76. <i class="s fa fa-plus"></i>
  77. <p>选择身份证正面</p>
  78. <input name="card0" type="file" onchange="readFile0(this)"/>
  79. </div>
  80. </div>
  81. </div>
  82. <hr>
  83. <div class="row">
  84. <div class="col-sm-6">
  85. <img class="cover" id="cover1" src="<?= STATIC_URL ?>/ui/img/id_cover1.jpg">
  86. </div>
  87. <div class="col-sm-6">
  88. <div class="fileinput-button">
  89. <i class="s fa fa-plus"></i>
  90. <p>选择身份证反面</p>
  91. <input name="card1" type="file" onchange="readFile1(this)"/>
  92. </div>
  93. </div>
  94. </div>
  95. <hr>
  96. <p>填写基本信息</p>
  97. <div class="form-group"><label>姓名 *</label>
  98. <input name="name" type="text" placeholder="您的姓名" class="form-control">
  99. </div>
  100. <div class="form-group"><label>身份证号码 *</label>
  101. <input name="id_card" type="text" placeholder="您的身份证号码" class="form-control">
  102. </div>
  103. <div class="form-group">
  104. <label>电子邮箱 *</label>
  105. <div class="clearfix">
  106. <input style="width:60%;" id="email" name="email" type="text" placeholder="您的电子邮箱" class="form-control pull-left">
  107. <div style="width:30%;" id="sendMail" onclick="sendMail()" class="pull-right btn btn-default">
  108. 获取验证码
  109. </div>
  110. </div>
  111. </div>
  112. <div class="form-group">
  113. <label>邮箱验证码 *</label>
  114. <input name="vcode" type="text" placeholder="您的邮箱验证码" class="form-control">
  115. </div>
  116. <!--<div class="form-group">
  117. <label>手机号码 *</label>
  118. <input id="mobile" name="mobile" type="text" placeholder="您的手机号码" class="form-control ">
  119. </div>-->
  120. <input type="hidden" name="level" value="100">
  121. <div class="form-group">
  122. <label>推荐人ID* </label>
  123. <?php if ($login) { ?>
  124. <input name="rid" type="text" placeholder="您的推荐人ID" class="form-control" value="<?= $login ?>" readonly>
  125. <?php }else{ ?>
  126. <input name="rid" type="text" placeholder="您的推荐人ID" class="form-control" value="" >
  127. <?php } ?>
  128. </div>
  129. <div class="form-group"><label>地址(需与您的身份证地址一致) *</label>
  130. <input name="address" type="text" placeholder="您的联系地址" class="form-control">
  131. </div>
  132. <div class="form-group">
  133. <label> <input name="agree1" type="checkbox" class="i-checks">
  134. 我已阅读和同意<a href="<?= STATIC_URL ?>/upload/客户协议与风险披露声明书.pdf" target="_blank">《客户协议与风险披露声明书》</a>
  135. </label>
  136. </div>
  137. <div class="form-group">
  138. <label> <input name="agree2" type="checkbox" class="i-checks">
  139. 我已阅读和同意<a href="<?= STATIC_URL ?>/upload/免责声明.pdf" target="_blank">《免责声明》</a>
  140. </label>
  141. </div>
  142. <div class="form-group">
  143. <button id="submit" class="btn btn-lg btn-primary" type="button">
  144. <strong>提交申请</strong>
  145. </button>
  146. </div>
  147. </div>
  148. </div>
  149. </div>
  150. </form>
  151. </div>
  152. </div>
  153. <?php $this->beginBlock('footer_script'); ?>
  154. <script src="<?= STATIC_URL ?>/ui/js/jquery-qrcode-0.14.0.min.js"></script>
  155. <script>
  156. jQuery('#qrcode').qrcode({
  157. render: 'image',
  158. correctLevel: 0,
  159. text: '<?= Url::current([], true) ?>',
  160. size: 200,
  161. background: '#FFF'
  162. });
  163. function readFile0(obj) {
  164. var file = obj.files[0];
  165. if (!/image\/\w+/.test(file.type)) {
  166. return false;
  167. }
  168. var reader = new FileReader();
  169. reader.readAsDataURL(file);
  170. reader.onload = function (e) {
  171. $("#cover0").attr("src", this.result);
  172. }
  173. }
  174. function readFile1(obj) {
  175. var file = obj.files[0];
  176. if (!/image\/\w+/.test(file.type)) {
  177. return false;
  178. }
  179. var reader = new FileReader();
  180. reader.readAsDataURL(file);
  181. reader.onload = function (e) {
  182. $("#cover1").attr("src", this.result);
  183. }
  184. }
  185. var wait = 120;
  186. function time() {
  187. if (wait == 0) {
  188. $("#sendMail").html("获取验证码");
  189. wait = 120;
  190. } else {
  191. $("#sendMail").html(wait + "秒后重试");
  192. wait--;
  193. setTimeout(function () {
  194. time()
  195. }, 1000)
  196. }
  197. }
  198. function sendMail() {
  199. //对邮箱的格式进行验证
  200. var emailvalue = $("#email").val();
  201. var reg = /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/;
  202. if(!reg.test(emailvalue)){
  203. toastr.error('邮箱格式不正确', "提示");
  204. return;
  205. }
  206. if ($("#email").val()) {
  207. $.ajax({
  208. type: "POST",
  209. url: "<?= Url::to(['sendmail']) ?>",
  210. data: {
  211. email: $("#email").val()
  212. },
  213. dataType: "json",
  214. beforeSend: function () {
  215. },
  216. success: function (data) {
  217. if (data.isSuccess) {
  218. time();
  219. } else {
  220. toastr.error(data.msg, "提示");
  221. }
  222. },
  223. complete: function (XMLHttpRequest, textStatus) {
  224. },
  225. error: function () {
  226. }
  227. });
  228. } else {
  229. return;
  230. }
  231. }
  232. $(document).ready(function () {
  233. $("#form").validate({
  234. rules: {
  235. "card0": {
  236. required: true
  237. },
  238. "card1": {
  239. required: true
  240. },
  241. "name": {
  242. required: true
  243. },
  244. "id_card": {
  245. required: true
  246. },
  247. "email": {
  248. required: true,
  249. email: true,
  250. remote: "<?= Url::to(['checkemailexist']) ?>"
  251. },
  252. "vcode": {
  253. required: true
  254. },
  255. "level": {
  256. required: true
  257. },
  258. "address": {
  259. required: true
  260. },
  261. "rid": {
  262. required: true
  263. },
  264. "agree1": {
  265. required: true
  266. },
  267. "agree2": {
  268. required: true
  269. }
  270. }
  271. });
  272. });
  273. $("#submit").on("click", function () {
  274. var formData = new FormData($("#form")[0]);
  275. if ($("#form").valid()) {
  276. $.ajax({
  277. type: "POST",
  278. url: "<?= Url::to(['opensave']) ?>",
  279. data: formData,
  280. dataType: "json",
  281. async: false,
  282. cache: false,
  283. contentType: false,
  284. processData: false,
  285. beforeSend: function () {
  286. },
  287. success: function (data) {
  288. if (data.isSuccess) {
  289. $("#req").hide();
  290. $("#result").show();
  291. //toastr.success(data.msg, "提示");
  292. } else {
  293. toastr.error(data.msg, "提示");
  294. }
  295. },
  296. complete: function (XMLHttpRequest, textStatus) {
  297. },
  298. error: function () {
  299. }
  300. });
  301. }
  302. });
  303. </script>
  304. <?php $this->endBlock(); ?>