seam 8 年之前
父節點
當前提交
328942e41f

+ 7 - 0
www/webapp/moonclub/css/common.css

@@ -279,3 +279,10 @@
 	color: #fff;
 }
 
+/*弹出框样式调整*/
+.card{
+	padding: 5%;
+}
+.box-center{
+	background-color: rgba(0, 0, 0, 0.4);
+}

File diff suppressed because it is too large
+ 0 - 0
www/webapp/moonclub/dist/css/main.css


+ 1 - 1
www/webapp/moonclub/dist/js/api.js

@@ -9,7 +9,7 @@ base.js
 api.js
 native.js
 zepto.js
-$.js
+jq_extend.js
 spa.js
 ratchet.js
 model/product.js

File diff suppressed because it is too large
+ 0 - 0
www/webapp/moonclub/dist/js/build/template.js


+ 1 - 1
www/webapp/moonclub/dist/js/config.js → www/webapp/moonclub/dist/js/config.js

@@ -1 +1 @@
-define(["config","native","zepto"],function(e,t,n){return function(n){function i(e){var s=r.shift();s.data=e.data,n.autoAjax(s),r.length>0&&t.getSign(r[0].data,i)}n.extend(n,{getScript:function(e,t){var n=document.createElement("script");n.async="async",n.src=e,t&&(n.onload=t),document.getElementsByTagName("head")[0].appendChild(n)},autoAjax:function(t){t.no_sign=1;if(location.host=="yiguanjia.me")n.ajax(t);else{t.data.version=e.o2oVersion;var r=t.url;r.indexOf("?")==-1&&(r+="?"),r.charAt(r.length-1)!="?"&&(r+="&"),r+="callback=?",!t.data||(r.charAt(r.length-1)!="?"&&(r+=""),r+="&"+n.param(t.data)),n.ajaxJSONP({url:r,success:t.success?t.success:null,error:t.error?t.error:null})}},signAjax:function(n){if(e.isIOS||e.isAndroid){var s=n.data,o=n.success;n.success=function(e){o(e)},s.time||(s.time=(new Date).getTime()/1e3),r.push(n),r.length==1&&t.getSign(r[0].data,i)}else this.autoAjax(n)},newTouch:function(e,t,r){var i="tap";window.DocumentTouch&&document instanceof DocumentTouch||"ontouchstart"in window||(i="click"),r!==undefined?n(r).on(i,e,function(e){t.call(this,e)}):n(e).on(i,function(e){t.call(this,e)})}});var r=[]}(n),n});
+define(["config","native","zepto"],function(e,t,n){return function(n){function i(e){var s=r.shift();s.data=e.data,n.autoAjax(s),r.length>0&&t.getSign(r[0].data,i)}n.extend(n,{getScript:function(e,t){var n=document.createElement("script");n.async="async",n.src=e,t&&(n.onload=t),document.getElementsByTagName("head")[0].appendChild(n)},autoAjax:function(t){t.no_sign=1;if(location.host=="yiguanjia.me")n.ajax(t);else{t.data.version=e.o2oVersion;var r=t.url;r.indexOf("?")==-1&&(r+="?"),r.charAt(r.length-1)!="?"&&(r+="&"),r+="callback=?",!t.data||(r.charAt(r.length-1)!="?"&&(r+=""),r+="&"+n.param(t.data)),n.ajaxJSONP({url:r,success:t.success?t.success:null,error:t.error?t.error:null})}},signAjax:function(n){if(e.isIOS||e.isAndroid){var s=n.data,o=n.success;n.success=function(e){o(e)},s.time||(s.time=(new Date).getTime()/1e3),r.push(n),r.length==1&&t.getSign(r[0].data,i)}else this.autoAjax(n)},newTouch:function(e,t,r){var i="click";window.DocumentTouch&&document instanceof DocumentTouch||"ontouchstart"in window||(i="click"),r!==undefined?n(r).on(i,e,function(e){t.call(this,e)}):n(e).on(i,function(e){t.call(this,e)})}});var r=[]}(n),n});

File diff suppressed because it is too large
+ 0 - 0
www/webapp/moonclub/dist/js/main.js


File diff suppressed because it is too large
+ 0 - 0
www/webapp/moonclub/dist/js/model/address.js


File diff suppressed because it is too large
+ 0 - 1
www/webapp/moonclub/dist/js/panel/actionSheet.js


+ 98 - 0
www/webapp/moonclub/js/jq_extend.js

@@ -0,0 +1,98 @@
+/**
+ * desc: 对$进行扩展
+ * author: wangyang
+ * date: 2015-04-11
+ */
+define(['config', 'native', 'zepto'], function(config, native, $) {
+	(function($) {
+		$.extend($, {
+			getScript: function(src, func) {
+				var script = document.createElement('script');
+				script.async = 'async';
+				script.src = src;
+				if (func) {
+				   script.onload = func;
+				}
+				document.getElementsByTagName('head')[0].appendChild(script);
+			},
+			//根据域名判断使用ajax还是jsonP
+			autoAjax: function(param) {
+				param['no_sign'] = 1;
+				if (location.host == 'yiguanjia.me') {
+					$.ajax(param);
+				} else {
+					// api接口增加版本号
+					param.data['version'] = config.o2oVersion;
+					var url = param.url;
+					if (url.indexOf('?') == -1) {
+						url += '?';
+					}
+					if (url.charAt(url.length - 1) != '?') {
+						url += '&';
+					}
+					url += 'callback=?';
+					if (!!param.data) {
+						if (url.charAt(url.length - 1) != '?') {
+							url += '';
+						}
+						url += '&' + $.param(param.data);
+					}
+					$.ajaxJSONP({
+						url: url,
+						success: (!!param.success) ? param.success : null,
+						error: (!!param.error) ? param.error : null
+					})
+				}
+			},
+			//带验证的ajax
+			signAjax: function(options) {
+				if (config.isIOS || config.isAndroid ) {
+					var params = options.data;
+					var sgf = options.success;
+
+					options.success = function(res) {
+						sgf(res);
+					}
+
+					if (!!!params.time) {
+						params.time = new Date().getTime() / 1000;
+					}
+					sign_queue.push(options);
+					if (sign_queue.length == 1) {
+						native.getSign(sign_queue[0].data, sign_callback);
+					}
+				} else {
+					this.autoAjax(options);
+				}
+			},
+			//touch绑定事件的封装
+			newTouch: function(el, callback, parent_dom) {
+				var event = 'click';
+				if (!((window.DocumentTouch && document instanceof DocumentTouch) || 'ontouchstart' in window)) {
+					event = 'click';
+				}
+				if (parent_dom !== undefined) {
+					$(parent_dom).on(event, el, function(ev) {
+						callback.call(this, ev);
+					});
+				} else {
+					$(el).on(event, function(ev) {
+						callback.call(this, ev);
+					});
+				}
+			}
+		})
+		//由于加密是异步的,递归调用队列
+		var sign_queue = [];
+		function sign_callback(res) {
+			var options = sign_queue.shift();
+			options.data = res.data;
+			$.autoAjax(options);
+			if (sign_queue.length > 0) {
+				native.getSign(sign_queue[0].data, sign_callback);
+			}
+		}
+	})($);
+
+	return $;
+})

+ 1 - 1
www/webapp/moonclub/js/main.js

@@ -9,7 +9,7 @@ require.config({
     spa: '../../common/js/spa',
     // IScroll: '../../framework/iscroll5/iscroll-probe',
     ratchet: '../../framework/ratchet-2.0.2/dist/js/ratchet.base',
-    $: '../../common/js/jq_extend',
+    $: './jq_extend',
     autosize: '../../common/js/autosize',
     config: '../../common/js/config',
     helper: '../../common/js/helper',

+ 108 - 82
www/webapp/moonclub/js/page/userInfo.js

@@ -9,11 +9,6 @@ define(['$', 'template', 'recharge', 'native', 'config', 'user', 'product', 'api
     });
   }
 
-  function btnCode() {
-//    event.preventDefault();
-    console.log(14)
-  }
-
   var code; //在全局定义验证码
   var smsCode; // 短信验证码
 // //产生验证码
@@ -24,10 +19,11 @@ define(['$', 'template', 'recharge', 'native', 'config', 'user', 'product', 'api
   function createCode() {
     code = "";
     var codeLength = 4; //验证码的长度
+    var i = 0
     // var checkCode = $("#checkCode").val();
     var random = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
       'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'); //随机数
-    for (var i = 0; i < codeLength; i++) { //循环操作
+    for (; i < codeLength; i++) { //循环操作
       var charIndex = Math.floor(Math.random() * 36); //取得随机数的索引
       code += random[charIndex]; //根据索引取得随机数加到code上
     }
@@ -49,6 +45,10 @@ define(['$', 'template', 'recharge', 'native', 'config', 'user', 'product', 'api
 //     }
 //   }
 
+  function run() {
+    console.log('run')
+  }
+
   return {
     title: '完善资料',
     body: '',
@@ -80,113 +80,133 @@ define(['$', 'template', 'recharge', 'native', 'config', 'user', 'product', 'api
           }
         })
       }, $view);
-      // 验证码
+      // 重置验证码
       $.newTouch('.checkCodeBtn,#checkCode', function (event) {
         $('#checkCode').val(createCode()); //刷新验证码
-      },$view);
-
+      }, $view);
+      // 获取短信验证码
       $.newTouch('.createCode', function (event) {
-        event.preventDefault();
-        var mobile = $(".user-mobile").val();
-        var inputCode = $(".input").val(); //取得输入的验证码并转化为大写
-        if (inputCode.length <= 0) { //若输入的验证码长度为0
-          //则弹出请输入验证码
-          $doc.trigger('spa:openpanel', ['simpleAlert', {
-            message: '请输入验证码!'
-          }]);
-        } else if (inputCode.toUpperCase() != code) { //若输入的验证码与产生的验证码不一致时
-          //则弹出验证码输入错误
-          $('#checkCode').val(createCode()); //刷新验证码
-        } else { //输入正确时
-          // 发送短信
+          event.preventDefault();
+          var mobile = $(".user-mobile").val();
+          var createCode1 = $('.createCode');
+          var inputCode = $(".input").val(); //取得输入的验证码并转化为大写
+          var viewShow = true;
+          var s = 5, t;
+          console.log(inputCode.toUpperCase());
+          console.log(code);
+          console.log(inputCode.toUpperCase() != code);
           if (!(/^1[34578]\d{9}$/.test(mobile)) || mobile == 0) {
-            $doc.trigger('spa:openpanel', ['simpleAlert', {
-              message: '手机号码有误'
-            }]);
-          } else {
+            // $doc.trigger('spa:openpanel', ['simpleAlert', {
+            //   message: '手机号码有误'
+            // }]);
+            // return;
+            alert('手机号码有误!')
+            return;
+          } else if (inputCode.length <= 0) { //若输入的验证码长度为0
+            //则弹出请输入验证码
+            // $doc.trigger('spa:openpanel', ['simpleAlert', {
+            //   message: '请输入验证码!'
+            // }]);
+            // return;
+            alert('请输入验证码!');
+            return;
+          } else if (inputCode.toUpperCase() != code) { //若输入的验证码与产生的验证码不一致时
+            //则弹出验证码输入错误
+            $('#checkCode').val(createCode()); //刷新验证码
+            alert('验证码输入错误!');
+            return;
+          } else if (viewShow) {
             api.getCode({
               mobile: mobile
             }, function (res) {
               if (res.success) {
                 smsCode = res.data.code
                 console.log(smsCode)
-                $doc.trigger('spa:openpanel', ['simpleAlert', {
-                  message: '验证码已发送至您的手机,请注意查收'
-                }]);
-
+                $('#checkCode').val(createCode()); //刷新验证码
+                t = setInterval(function () {
+                  createCode1[0].disabled = true;
+                  viewShow = false
+                  createCode1.val(s--);
+                  if (s < 0) {
+                    s = 5;
+                    createCode1[0].disabled = false;
+                    createCode1.val("获取验证码");
+                    clearTimeout(t);
+                  }
+                }, 1000);
+                viewShow = false
+                alert('验证码已发送至您的手机,请注意查收!')
+                return;
               }
             })
-            // $doc.trigger('spa:openpanel', ['simpleAlert', {
-            //   message: '验证码已发送成功!'
-            // }]);
           }
-        }
-      }, $view)
-      //
+        }, $view
+      )
+//
       $.newTouch('.checkCodeBtn', function (event) {
         event.preventDefault();
         $('.code').val(createCode())
       }, $view)
 
-      // 咨询
+// 咨询
       $.newTouch('.btn-user-info', function (event) {
         event.preventDefault();
         var name = $(".user-name").val();
         var mobile = $(".user-mobile").val();
         var num = $(".user-num").val();
-        console.log(name)
+        var smsCodeInput = $(".smsCode").val();
+        smsCodeInput = parseInt(smsCodeInput)
         if (name == null || name == undefined || name == '') {
-          $doc.trigger('spa:openpanel', ['simpleAlert', {
-            message: '请输入您的姓名'
-          }]);
+          // $doc.trigger('spa:openpanel', ['simpleAlert', {
+          //   message: '请输入您的姓名'
+          // }]);
+          alert('请输入您的姓名!')
           return;
-        }
-        // 判断验证码
-        if (smsCode === undefined) {
-          $doc.trigger('spa:openpanel', ['simpleAlert', {
-            message: '请填写正确的短信验证码'
-          }]);
+        } else if (num === undefined) {
+          // $doc.trigger('spa:openpanel', ['simpleAlert', {
+          //   message: '请选择您的预产期'
+          // }]);
+          // return;
+          alert('请选择您的预产期!')
           return;
-        }
-        // if (!(/^1[34578]\d{9}$/.test(mobile)) || mobile == 0) {
-        //   $doc.trigger('spa:openpanel', ['simpleAlert', {
-        //     message: '手机号码有误'
-        //   }]);
-        //   return;
-        // }
-        // return
-        if (num === undefined) {
-          $doc.trigger('spa:openpanel', ['simpleAlert', {
-            message: '请选择您的预产期'
-          }]);
+        } else if (!(/^1[34578]\d{9}$/.test(mobile)) || mobile == 0) {
+          alert('请输入您的手机号码!')
           return;
+        } else if (smsCode !== smsCodeInput) { // 判断验证码
+          // $doc.trigger('spa:openpanel', ['simpleAlert', {
+          //   message: '请填写正确的短信验证码'
+          // }]);
+          alert('请填写正确的短信验证码!')
+          return;
+        } else {
+          api.getReserveMonth({
+            user_id: user.id,
+            user_name: name,
+            homeType: 1,
+            num: num,
+            mobile: mobile,
+          }, function (res) {
+            if (res.success) {
+              // $doc.trigger('spa:openpanel', ['simpleAlert', {
+              //   message: res.message
+              // }]);
+              alert(res.message)
+              return;
+            } else {
+              // $doc.trigger('spa:openpanel', ['simpleAlert', {
+              //   message: res.message
+              // }]);
+              alert(res.message)
+              return;
+            }
+            console.log(res);
+          });
         }
-        api.getReserveMonth({
-          user_id: user.id,
-          user_name: name,
-          homeType: 1,
-          num: num,
-          mobile: mobile,
-        }, function (res) {
-          if (res.success) {
-            $doc.trigger('spa:openpanel', ['simpleAlert', {
-              message: res.message
-            }]);
-          } else {
-            $doc.trigger('spa:openpanel', ['simpleAlert', {
-              message: res.message
-            }]);
-          }
-          console.log(res);
-        });
       }, $view);
 
       dtd.resolve();
     },
     beforeopen: function (pageData, dtd) {
-      dtd.resolve();
-    },
-    afteropen: function (pageData, dtd) {
       var $view = this;
       var $doc = $(document);
       $doc.trigger('spa:openloader');
@@ -208,9 +228,15 @@ define(['$', 'template', 'recharge', 'native', 'config', 'user', 'product', 'api
         }, 700);
       }
       dtd.resolve();
-    },
+    }
+    ,
+    afteropen: function (pageData, dtd) {
+      dtd.resolve();
+    }
+    ,
     beforeclose: function (pageData, dtd) {
       dtd.resolve();
     }
   }
-});
+})
+;

+ 55 - 54
www/webapp/moonclub/tpl/userInfo/index.html

@@ -1,59 +1,60 @@
 <header class="bar bar-nav">
-	<a class="left-button back-button">
-		<div class="icon icon-left-nav"></div>
-	</a>
-	<h1 class="title">完善资料</h1>
+  <a class="left-button back-button">
+    <div class="icon icon-left-nav"></div>
+  </a>
+  <h1 class="title">完善资料</h1>
 </header>
 <div class="content" id="userInfoScroll" style="background: #fff;">
-	<div class="page-content">
-		<div class="container">
-			<h2 style="text-align: center">完善资料</h2>
-			<!--姓名-->
-			<div class="form-group">
-				<label>您的姓名:</label>
-				<input type="text" name='user_name' class="form-control user-name" placeholder="请输入您的姓名"/>
-			</div>
-			<!--预产期-->
-			<div class="form-group">
-				<label>预产日期:</label>
-				<input name="num" class="form-control user-num" style="background-color: #fff;" id="demo1" type="text"
-				       readonly=""
-				       placeholder="请选择日期"/>
-				<input type="hidden" name="user_id" id="userId">
-			</div>
-			<!--手机号码-->
-			<div class="form-group">
-				<label>您的号码:</label>
-				<input type="text" name="mobile" class="form-control user-mobile"
-				       placeholder="请输入您的手机号码"/>
-				<div class="get-code">
-					<input type="text" class="input" placeholder="输入验证码"/>
-					<input type="button" class="checkCode" id="checkCode" class="code checkCodeBtn" value="world!"/>
-					<div class="" onclick="btnCode()">换一个</div><br>
-				</div>
-				<div class="get-code">
-					<input type="text" class="input" placeholder="请输入短信验证码"/>
-					<input class="createCode" type="button" value="获取短信验证码"/>
-				</div>
-			</div>
-			<!--按钮-->
-			<div class="form-group">
-				<a class="btn-user-info"
-				   style="background: #2f004e;color:rgb(255,255,255);border: 0;padding: 4px 0;font-size: 22px;width: 100%;display: block;text-align: center;"
-				   class="btn btn-success col-xs-12"
-				   data-container="body"
-				   data-toggle="popover"
-				   data-placement="top"
-				   data-content="{{btnContent}}">
-					提交
-				</a>
-			</div>
-		</div>
+  <div class="page-content">
+    <div class="container">
+      <h2 style="text-align: center">完善资料</h2>
+      <!--姓名-->
+      <div class="form-group">
+        <label>您的姓名:</label>
+        <input type="text" name='user_name' class="form-control user-name" placeholder="请输入您的姓名"/>
+      </div>
+      <!--预产期-->
+      <div class="form-group">
+        <label>预产日期:</label>
+        <input name="num" class="form-control user-num" style="background-color: #fff;" id="demo1" type="text"
+               readonly=""
+               placeholder="请选择日期"/>
+        <input type="hidden" name="user_id" id="userId">
+      </div>
+      <!--手机号码-->
+      <div class="form-group">
+        <label>您的号码:</label>
+        <input type="text" name="mobile" class="form-control user-mobile"
+               placeholder="请输入您的手机号码"/>
+        <div class="get-code">
+          <input type="text" class="input" placeholder="输入验证码"/>
+          <input type="button" class="checkCode" id="checkCode" class="code checkCodeBtn" value="world!"/>
+          <div class="checkCodeBtn">换一个</div>
+          <br>
+        </div>
+        <div class="get-code">
+          <input type="text" class="input smsCode" placeholder="请输入短信验证码"/>
+          <input class="createCode" type="button" value="获取短信验证码"/>
+        </div>
+      </div>
+      <!--按钮-->
+      <div class="form-group">
+        <a class="btn-user-info"
+           style="background: #2f004e;color:rgb(255,255,255);border: 0;padding: 4px 0;font-size: 22px;width: 100%;display: block;text-align: center;"
+           class="btn btn-success col-xs-12"
+           data-container="body"
+           data-toggle="popover"
+           data-placement="top"
+           data-content="{{btnContent}}">
+          提交
+        </a>
+      </div>
+    </div>
 
-	</div>
+  </div>
 </div>
-<script>
-  function btnCode() {
-    console.log(44)
-  }
-</script>
+<!--<script>-->
+  <!--function btnCode() {-->
+    <!--console.log(44)-->
+  <!--}-->
+<!--</script>-->

Some files were not shown because too many files changed in this diff