app.js 5.23 KB
/**
 * 工具类
 */

/**
 * 金额转成千分位格式
 * 
 * @param decimals 小数位数
 * @param decimal_sep
 * @param thousands_sep 千分位分隔符
 */
Number.prototype.toMoney = function(decimals, decimal_sep, thousands_sep) {
	var n = this, c = isNaN(decimals) ? 2 : Math.abs(decimals), d = decimal_sep
			|| '.', t = (typeof thousands_sep === 'undefined') ? ','
			: thousands_sep, sign = (n < 0) ? '-' : '', i = parseInt(n = Math
			.abs(n).toFixed(c))
			+ '', j = ((j = i.length) > 3) ? j % 3 : 0;
	return sign + (j ? i.substr(0, j) + t : '')
			+ i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t)
			+ (c ? d + Math.abs(n - i).toFixed(c).slice(2) : '');
};

$.ajaxSetup({
	complete : function(request, textStatus) {
		// 通过XMLHttpRequest取得响应头,sessionstatus,
		var sessionstatus = request.getResponseHeader("sessionstatus");
		if (sessionstatus == 'timeout') {
			changeCaptcha();
			$('#loginModal').modal({
				closeOnOverlayClick : false
			}).open();
		}
	}
});

/**登录页验证码*/
function changeCaptcha() {
	$('#imgCaptcha').attr('src', '/captcha-image?' + Math.random());
}
/**弹窗登录验证码*/
function changeCaptcha2() {
	$('#imgCaptcha2').attr('src', '/captcha-image?' + Math.random());
}




$.extend({
	
	/**
	 * 消息弹出框
	 */
	alert : function(content, width, height){
		if (isNaN(width) || width< 300) {
			width = 300;
		}
		if (isNaN(height) || height< 300) {
			width = 300;
		}
		$("#alert").remove();
		var popUp = $('<div class="easyDialog_wrapper entrust ensure" style="width:' + 
			width+'px;height:'+ height +'px;" id="alert"></div>')
			.append('<div class="easyDialog_content" style="border-top: 3px solid #d81e31;"><div class="easyDialog_text"  id="entrust_result">' + 
				content + '</div><div class="easyDialog_footer" ><button style="width: 40%;margin: 20px 30%;background: #d1131d;border: 0;" class="btn_highlight " id="closeBtn" >确定</button></div></div>');
		$(document.body).append(popUp);
		easyDialog.open({
			  container : 'alert'
		});
	}
});



/**
 * 发送验证码
 */
var ValidCode = function($) {
	
	return {
		i : 60,
		flag : false,
		resultCode : null,

		checkValia : function() { // that,vCode,phoneNum
			var _this = this;
			var _that = arguments[0];

			if (arguments.length == 3) {
				var vCode = arguments[1];
				var phoneNum = arguments[2];
				$.ajax({
					url : "/checkValiaCode",
					type : "POST",
					dataType : "json",
					data : {
						valiadateCode : vCode,
						randomNum : Math.random()
					},
					success : function(data) {
						// var result=_this.sendSms(_that,vCode,phoneNum);
						if (data.resultCode == "0") {
							alert("验证码不正确");
							changeCaptcha();
						} else if (data.resultCode == "1") {
							_this.sendSms(_that, vCode, phoneNum)
						}
					}
				});
			} else if (arguments.length == 1) {
				_this.sendSms(_that);
			}

		},
		
		checkPhoneNum : function(phoneNum) {
			var reg = /^0?1[3|4|5|7|8][0-9]\d{8}$/;
			if (!phoneNum || !reg.test(phoneNum)) {
				return false;
			} else {
				return true;
			}
		},
		
		/**给当前用户发送验证码*/
		sendToCurrentUser : function(button, stype) {
			ValidCode.countDown(button, 60);
			$.get('/msg/sendValidCode?t=' + Math.random(), function(data) {
				}, 'text');
		},
		
		/**发送提现短信*/
		sendForKiting : function(button){
			ValidCode.countDown(button, 60);
			$.get('/msg/kiting?t=' + Math.random(), function(data) {
				}, 'text');
		},
		
		/**
		 * 发送到指定号码
		 */
		sendToPhoneNo : function(mobile_tel, valiadateCode) {
			$.ajax({
				url : "/msg/sendMsg",
				type : "POST",
				dataType : 'json',
				data : {
					mobile_tel : mobile_tel,
					valiadateCode : valiadateCode
				},
				success : function(data) {
					var ret = data.resultCode;
					return ret;
				},
				error : function() {

				}
			});
		},
		
		/**
		 * 倒计时
		 * @param button 按钮ID
		 * @param time 倒计时秒数
		 * @return setTimeout句柄
		 */
		countDown: function(button, time) {
			var handler = null;
			if (time > 0) {
				$(button).val('再次发送(' + time + ')');
				$(button).attr('disabled', true);
				handler = setTimeout(function() {
					ValidCode.countDown(button, --time);
				}, 1000);
			} else {
				$(button).val('发送验证码');
				$(button).attr('disabled', false);
			}
			return handler;
		},
		
		sendSms : function() {
			var _this = this;
			var _that = arguments[0];
			if (arguments.length == 3) {
				var vCode = arguments[1];
				var phoneNum = arguments[2];
				var checkpn = _this.checkPhoneNum(phoneNum);
				if (!checkpn) {
					$("#code_text").html("<span style='color:red;'>请填写有效手机号码。</span>");
				}
			}

			if (_this.flag) {
				$(_that).text("发送验证码");
				_this.flag = false;
				_this.i = 60;
				return;
			}

			if (_this.i > 0) {
				_this.i = _this.i - 1;
				if (_this.i == 59) {
					$(_that).attr('disabled', true);
					if (arguments.length == 3) {
						_this.resultCode = _this.sendMes(phoneNum, vCode);
					} else {
						_this.resultCode = _this.sendMes();
					}
				}
				$(_that).html("再次发送(" + _this.i + ")");
				setTimeout(function() {
					_this.sendSms(_that);
				}, 1000);
			} else {
				_this.i = 60;
				$(_that).attr('disabled', false);
				$(_that).text("发送验证码");
			}
		}
	}
}(jQuery);