/**
 * Created by yaoyc on 2016/8/11.
 * Updated by jiangw on 2017/4/26.
 * Updated by yaoyc on 2017/5/22
 *nsw
 */
/*global,nsw*/
(function ($) {
	"use strict";
	$.fn.nsw = function (options) {
		var base = $('head').data('base');
		var verify;
		this.defaults = {
			getCodeBtn: '.getcode_gg', //验证图片id
			codeggInput: '.code_gg', //验证码输入框
			refresh:'.getcode_gg',
			btnCell: '.submit', //提交按钮
			mainCell: '.bd',
			row: '.row',
			timeHint: '.timenum',
			timeInterval: 30,
			isValidate: true,
			ts: null,
			reset: '.reset',
			hasId:false,
			isPreview:false,
			errorModal:false,
			lyFields:{},
			formInfo:{}
		};
		var opt = $.extend({}, this.defaults, options);
		var defaultObj = $(this);
        if(window.parent){
           opt.isPreview =  window.parent.location.href.search('state=preview')>0;
        }else if(window.parent.location.search){
             opt.isPreview =  window.location.href.search('state=preview')>0;
        }
        if(opt.isPreview){
            	defaultObj.find(opt.getCodeBtn).attr('src','data:image/png;base64,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');
        }
        
		//验证函数
		verify = function verify() {
			var service = {};
			service.run = function run(type, value, msg,label) {
				switch (type) {
				    case undefined:
						return service.required(value);break;
					case 'phone':
						return service.checkPhone(value);
					case 'email':
						return service.checkEmail(value);
					case 'number':
						return service.checkNumber(value);
					case 'url':
						return service.checkUrl(value);
					case '':
						return service.required(value);
				
					default:
						return service.checkReg(type, value, msg,label);
				}
			};
			service.checkPhone = function checkPhone(value) {
				var phone = /^(13[0-9]|14[0-9]|15[0-9]|18[0-9])\d{8}$/;
				return {
					flog: phone.test(value),
					msg: '请填写正确的手机号码！'
				};
			};
			service.checkEmail = function checkEmail(value) {
				var email = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
				return {
					flog: email.test(value),
					msg: '请填写正确的email！'
				};
			};
			service.checkReg = function checkReg(type, value, msg,label) {
				var reg = eval(type);
				return {
					flog: reg.test(value),
					msg:label+ msg
				};
			};
			service.checkNumber = function checkNumber(value){
				var numReg = /^[0-9]*$/;
				return {
					flog: numReg.test(value),
					msg: '请填写数字！'
				};
			};
			service.checkUrl = function checkUrl(value){
				var numReg = /((http|ftp|https):\/\/)?[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:\/~\+#]*[\w\-\@?^=%&amp;\/~\+#])?/;
				return {
					flog: numReg.test(value),
					msg: '请填写网址！'
				};
			};
			service.required = function required(value, lable) {
				if (!value.length) {
					return {
						flog: false,
						msg: lable + '不能为空！'
					};
				} else {
					return {
						flog: true
					};
				}
			};
			service.checkForm = function checkForm(obj,errorModal) {
				var msg, pattern, label, inputLength;

				msg = obj.attr('msg') ? obj.attr('msg') : '请正确输入!';
				inputLength = obj.attr('maxLength') || 200;
				pattern = obj.attr('pattern');
				label = obj.parent(opt.row).find('.row-hd').text();
				if(!label){
					label = obj.attr('title');
				}
				if (obj.attr('label')) {
					label = obj.attr('label');
				}
				if (label) {
					label = label.replace(/[\s:?|]*/ig, '');
				}
				if (obj.attr('required')) {
					var requiredReturn = Verify.required(obj.val(), label);
					if (!requiredReturn.flog) {
						if(errorModal){
							Verify.showModal(requiredReturn.msg,false);
						}else {
							obj.siblings('.nsw-formtipbd').show().html(requiredReturn.msg);
						}
						obj.addClass('err');
						return false;
					}
				}
				if (obj.val() !== '') {
					var returnInfo = Verify.run(pattern, obj.val(), msg,label);
					if (!returnInfo.flog) {
						if(errorModal){
							Verify.showModal(returnInfo.msg,false);
						}else{
							obj.siblings('.nsw-formtipbd').show().html(returnInfo.msg);
						}
						obj.addClass('err');
						return false;
					} else {
						var totalCount =0;
						for(var i=0; i<obj.val().length; i++){
							var c = obj.val().charCodeAt(i);
							if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)){
								totalCount++;
							}
							else{
								totalCount+=2;
							}
						}
						if (totalCount > inputLength) {
							if(errorModal){
								Verify.showModal("字段长度不能超过"+inputLength/2+"个汉字或" + inputLength+"个字符",false);
							}else {
								obj.siblings('.nsw-formtipbd').show().html("字段长度不能超过"+inputLength/2+"个汉字或" + inputLength+"个字符");
							}
							obj.addClass('err');
							return false;
						} else {
							obj.removeClass('err');
							obj.siblings('.nsw-formtipbd').hide();
							return true;
						}
					}
				}
				return true;
			};
			service.checkSelect = function checkSelect(obj) {
				var label = obj.parent(opt.row).find('.row-hd').html();
				if (obj.attr('label')) {
					label = obj.attr('label');
				}
				if (label) {
					label = label.replace(/[\s:?|]*/ig, '');
				}
				if (obj.attr('required') && obj.val() === '-1') {
					obj.siblings('.nsw-formtipbd').show().html(label + "需要选择!");
					obj.addClass('err');
					return false;
				} else {
					obj.removeClass('err');
					obj.siblings('.nsw-formtipbd').hide();
				}
				return true;
			};
			service.checkAll = function checkAll(inputAndTextarea, selects) {
				var flog = true;
				inputAndTextarea.each(function () {
					var obj = $(this);
					flog = Verify.checkForm(obj,opt.errorModal) && flog;
					return flog;
				});
				selects.each(function () {
					var obj = $(this);
					flog = Verify.checkSelect(obj,opt.errorModal) && flog;
					return flog;
				});
				return flog;
			};
			service.countdown = function countdown(time) {
			
				if (time > 0) {
					time--;
					if(defaultObj.find(opt.timeHint).length){
					    defaultObj.find(opt.timeHint).html("请" + time + "秒后再次提交！");
					}else{
						if (!defaultObj.find(opt.btnCell).siblings('b').length) {
        					opt.ts = defaultObj.find(opt.btnCell).parent().append(" <b></b>");
        				}
					    opt.ts.find("b").show().html("请" + time + "秒后再次提交！");}
					
					defaultObj.find(opt.btnCell).attr("disabled", "disabled");
					setTimeout(function () {
						service.countdown(time);
					}, 1000);

				} else {
					//ts.find("b").html("");
					defaultObj.find(opt.btnCell).removeAttr("disabled");
					if(defaultObj.find(opt.timeHint).length){
					    defaultObj.find(opt.timeHint).html("");
					}else{
					   	opt.ts.find("b").hide();
					}
				}
			};
			service.getRowInfoById = function getRowInfoById(data, id) {
				if (data[id]) {
					return data[id];
				}
			};
			service.showModal = function showModal(msg,flog){
				var $tipHtml = $('<div class="nsw-modal"><div class="modal-dialog"><div class="modal-head"><span class="css-icon modal-logo"></span>消息提示 <span class="css-icon close"></span></div><div class="modal-body"><div class="modal-body-right"><p class="msg-title">感谢您的留言：</p><p class="msg">我们有您的支持将做的更好。</p><a href="javascript:void(0);" class="close-btn">关闭</a></div><div class="modal-body-left"><div class="icon css-icon"></div></div></div><div class="modal-foot"></div></div></div>');
				$tipHtml.find('.msg').html(msg);
				if(flog){
					$tipHtml.find('.modal-body-left .icon').addClass('success-message');
				}else{
					$tipHtml.find('.modal-body-left .icon').addClass('warming-message');
					$tipHtml.find('.modal-body-right .msg-title').html('错误信息:');
				}
				$("body").append($tipHtml);
				$tipHtml.find('.close,.close-btn').click(function(){
					$tipHtml.remove();
				});
			};
			return service;
		};
		var Verify = new verify();

		if(opt.hasId&&opt.lyFields){
			defaultObj.find(opt.row).each(function(){
				var ele = Verify.getRowInfoById(opt.lyFields,$(this).attr('id'));
				if(ele){
					$(this).find('input,select,textarea').attr({
						name:ele.fieldName,
						required:ele.isRequired,
						pattern:ele.regular,
						maxLength:ele.length||200,
						label:ele.title
					});
				}

			});

		}
		/*事件绑定
		 * a.验证码刷新
		 * */
		//刷新验证码(先保留默认路径,看后期是否会进行优化)
		defaultObj.find(opt.refresh).unbind('click').click(function () {
		    if(opt.isPreview){
		        return;
		    }
			defaultObj.find('.getcode_gg').attr("src", base+'Tools/code/code_gg.php?' + Math.random());
		});
		//监控input[text]  和select失去焦点后触发验证
		opt.inputAndTextarea = defaultObj.find(opt.row + " input[type='text']," + opt.row + "  textarea");
		opt.inputAndTextarea.unbind('blur').blur(function () {
			var obj = $(this);
			if(!$(this).val()){
				obj.removeClass('err');
				return
			}
			Verify.checkForm(obj,opt.errorModal);
		});
		opt.inputAndTextarea.unbind('keyup').keyup(function(){
			if(opt.errorModal){
				return;
			}
			var obj = $(this);
			var inputLength = obj.attr('maxLength') || 200;
			var totalCount =0;
			for(var i=0; i<obj.val().length; i++){
				var c = obj.val().charCodeAt(i);
				if ((c >= 0x0001 && c <= 0x007e) || (0xff60<=c && c<=0xff9f)){
					totalCount++;
				}
				else{
					totalCount+=2;
				}
			}
			if (totalCount > inputLength) {
				obj.siblings('.nsw-formtipbd').show().html("字段长度不能超过"+inputLength/2+"个汉字或" + inputLength+"个字符");
				obj.addClass('err');
				return false;
			} else {
				obj.removeClass('err');
				obj.siblings('.nsw-formtipbd').hide();
				return true;
			}
		});
		//select选择后
		opt.selects = defaultObj.find(opt.row + " select");
		opt.selects.unbind('change').change(function () {
			var obj = $(this);
			Verify.checkSelect(obj);
		});
		defaultObj.find(opt.reset).unbind('click').click(function () {
			defaultObj[0].reset();
		});
		//提交表单
		defaultObj.find(opt.btnCell).unbind('click').click(function () {
			var codegg,
			    isVerify;
			isVerify = Verify.checkAll(opt.inputAndTextarea, opt.selects);
			if (!isVerify) {
			    return;
			}
			if (!opt.isValidate||opt.isValidate==='false') {
				codegg = true;
			}else if(opt.formInfo.isValidate!==undefined&&!opt.formInfo.isValidate){
				codegg = true;
			} else {
			    if(opt.isPreview){
			        codegg = true;
			    }else{
			     
			       	var code_gg = defaultObj.find(opt.codeggInput).val();
			    	codegg = false;
			     $.ajax({
					type: "post",
					url: base+"Tools/code/chk_code.php?act=gg",
					data: "code=" + code_gg,
					async: false,
					success: function (msg) {
						if (msg === '1') {
							codegg = true;
							defaultObj.find(opt.getCodeBtn).attr("src", base+'Tools/code/code_gg.php?' + Math.random());
						} else {
							Verify.showModal("验证码错误!",false);
							defaultObj.find(opt.getCodeBtn).attr("src", base+'Tools/code/code_gg.php?' + Math.random());
							codegg = false;
							return;
						}
					}
				});
			    }
			
			
			}
		
			if (codegg && isVerify) {
				var dt = defaultObj.serializeObject();
				if(opt.hasId){
					dt.projId = opt.formInfo.projId;
					dt.formId = opt.formInfo._id;
				}
				var url = "";
				if ($("input[name='vcenter']").length) {
					url = $("input[name='vcenter']").val();
				}
				if (opt.formInfo.vcenter) {
					url =opt.formInfo.vcenter;
				}
				$.ajax({
					'url': url + "?json=" + JSON.stringify(dt).replace("%","%25"),
					'type': 'post',
					'dataType': 'jsonp',
					'jsonpCallback': 'callback',
					'error': function (data) {
						Verify.showModal("提交失败!",false);
						console.log(data);
					},
					'success': function (data) {
				    	defaultObj[0].reset();
						Verify.showModal(data.msg,true);
						var baseTime = opt.timeInterval||opt.formInfo.timeInterval;
						Verify.countdown(baseTime);
					}
				});

			}

		});

	};

	$.fn.serializeObject = function () {
		var o = {};
		var a = this.serializeArray();
		$.each(a, function () {
			if (o[this.name]) {
				if (!o[this.name].push) {
					o[this.name] = [o[this.name]];
				}
				o[this.name].push(this.value || '');
			} else {
				o[this.name] = this.value || '';
			}
		});
		return o;
	};

})($);
/*调用表单*/
$(function(){
    var formEl = $('.intentionalOrderFormId');
    $.each(formEl, function(index, formItem){
        var timeinterval = $(formItem).find('.timeinterval').val();
        var isvalidate = $(formItem).find('.isvalidate').val();
        $(formItem).nsw({
            btnCell: '.form-btn-submit',
            reset: '.form-btn-reset',
            timeInterval: timeinterval,
            isValidate: isvalidate,
            row: 'ul li',
            errorModal:true
        });
    });
})