(function($){
    //ready
    $(function(){
        if ($.ie6()) {
            //大按扭鼠标hover效果.
            $("#commit").bind("mouseover", function(){
                $(this).parent().addClass("large_plastic_button_hover");
            }).bind("mouseout", function(){
                $(this).parent().removeClass("large_plastic_button_hover");
            });
        }
    });//end ready
    $.fn.input_error = function(str){
        var $this = $(this);
        var $li = $this.parents("li:first");
        $li.addClass("classtiao_error").removeClass("classtiao");
        if (str) {
            $li.find(".newreg_bar_table_error").html(str);
        }
        $li.find(".newreg_bar_table_error").vshow();
    }
	
    $.fn.input_success = function(str){
        var $this = $(this);
        var $li = $this.parents("li:first");
        $li.find(".newreg_bar_table_error").vhide();
        $li.addClass("classtiao").removeClass("classtiao_error");
    }
	
    $.fn.input_focus = function(){
        return $(this).focus(function(){
            $(this).parent().prev().addClass("xblue12B");
        }).blur(function(){
            $(this).parent().prev().removeClass("xblue12B");
        });
    }
    //常量
    var ajaxurl = "/user/reg.php?act=email_check";
    var remote_check = false;
	var remoteResult = false;
    //ready 
    $(function(){
        $("form#register_form").submit(function(){
				if(remote_check==false){
					$("input[id=juese]").trigger("input.check");
					$("#user_name").trigger("input.check");
					$("#user_email").trigger("input.check");
					$("#user_password").trigger("input.check");
					$("#user_repassword").trigger("input.check");
					if($("input[id=hasbaby]:checked").val()=="y"){
						//$("input[id=hasbaby]").trigger("input.check");
						$("#info_birthday_year").trigger("input.check");
						$("#info_birthday_month").trigger("input.check");
						$("#info_birthday_day").trigger("input.check");
						$("#baby_name").trigger("input.check");
						$("#babysex").trigger("input.check");
						$("#info_star").trigger("input.check");
						$("#user_is_to_agree").trigger("input.check");
					}
				}
				
                if ($("div.newreg_bar_table_error:visible").length) {
                    $("li.newreg_bar_table_error:eq(0)").find("input").focus().select();
					return false;
                }else if($("div.tongyi").hasClass("red01")){
					 $("#user_is_to_agree").focus();
					 return false;
				}else {
                    if(remoteResult==false){
						if(remote_check==true){
							var t = setInterval(function(){if(remoteResult==true){clearInterval(t);$("form#register_form").submit()}},500);
						}
					}else{
						return true;
					}
                }
            return false;
        });//end submit
        //检查
        $.each("juese,user_name,user_email,user_password,user_repassword,hasbaby,baby_name,babysex,info_birthday_year,info_birthday_month,info_birthday_day".split(","), function(i, n){
            $("#" + n).bind("blur", function(){
                $("#" + n).val($.trim($("#" + n).val()));
                $("#" + n).trigger("input.check");
				if(this.id=="user_email"){
					remoteResult=false;
				}
            }).input_focus();
        });
		
		
    //选择角色
	$("input[id=juese]").bind("input.check",function(){
	   if ($("input[id=juese]:checked").length) {
            $("#juese").input_success();
        }else {
            $("#juese").input_error();
        }
	})
    //填写EMAIL
	     $("#user_email").bind("input.check", function(){
            //校验登录邮箱
            var patrn = /^[\w-]+@[\w-]+(\.[\w-]+)+$/;
            if (patrn.test($("#user_email").val())) {
                $("#user_email").input_success();
				if(remote_check==false && remoteResult==false){
                	$("#user_email").remoteCheckMail();
				}
            } else {
                $("#user_email").input_error();
            }
        })
    //填写全名
        $("#user_name").bind("input.check", function(){
            var patrn = /^([a-zA-Z0-9]|[._]|[^\x00-\xff]){2,16}$/;
            if (patrn.test($("#user_name").val())) {
                $("#user_name").input_success();
            }
            else {
                $("#user_name").input_error();
            }
        })

    //密码校验
	        $("#user_password").bind("input.check", function(){
            //校验密码
            var patrn = /^(\w){6,32}$/
            if (patrn.test($("#user_password").val())) {
                $("#user_password").input_success();
            }
            else {
                $("#user_password").input_error();
            }
        }).input_focus();
        $("#user_repassword").bind("input.check", function(){
            //校验重复密码
            if ($("#user_repassword").val() == $("#user_password").val()) {
                $("#user_repassword").input_success();
            }
            else {
                $("#user_repassword").input_error();
            }
        }).input_focus();
    //状态
    //如果有宝宝
	$("input[id=hasbaby]").bind("input.check",function(){
		if($("input[id=hasbaby]:checked").length){
			 $("input[id=hasbaby]").input_success();
		}else{
			 $("input[id=hasbaby]").input_error();
		}
	}).bind("click",function(){
		if(this.value=="n"){
			$("#baby_name,#babysex,#info_birthday_year,#info_star_select").each(function(){
				$(this).enable(false).input_success();
				$(this).parents("li").hide();
				
			})
		}else{
			$("#baby_name,#babysex,#info_birthday_year,#info_star_select").each(function(){
				$(this).enable(true);
				$(this).parents("li").show();
			})
		}
		
	})
	//FIX单选
	$("span:contains(已有宝宝)").click(function(){
		$("input[id=hasbaby]").eq(0).click();
	})
	$("span:contains(孕前孕期)").click(function(){
		$("input[id=hasbaby]").eq(1).click();
	})
	    //宝宝名字
		$("#baby_name").bind("input.check",function(){
			 var patrn = /^([a-zA-Z0-9]|[._]|[^\x00-\xff]){2,16}$/;
            if (patrn.test($("#baby_name").val())) {
                $("#baby_name").input_success();
            }
            else {
                $("#baby_name").input_error();
            }
		})
	    //宝宝性别
		 $("input[id=babysex]").bind("input.check", function(){
            if ($("input[id=babysex]:checked").length) {
                $("#babysex").input_success();
            }else {
                $("#babysex").input_error();
            }
        });
	    //宝宝生日
		$("#info_birthday_year").bind("input.check",function(){
			if(this.value!=""){
				 $("#info_birthday_year").input_success();
			}else{
				 $("#info_birthday_year").input_error("出生年份没有选择！");
			}	
		});
		$("#info_birthday_month").bind("input.check",function(){
			if(this.value!=""){
				 $("#info_birthday_month").input_success();
			}else{
				 $("#info_birthday_month").input_error("月份没有选择！");
			}	
		});
		$("#info_birthday_day").bind("input.check",function(){
			if(this.value!=""){
				 $("#info_birthday_day").input_success();
			}else{
				 $("#info_birthday_day").input_error("生日没有选择！");
			}	
		});
		$("#info_star").bind("input.check",function(){
			if(this.value!=0){
				  $("#info_birthday_year").input_success();
			}else{
				  $("#info_birthday_year").input_error();
			}											
		});
		//星座判断
	function getStar(month, day) {
		month = parseInt(month , 10);
		day = parseInt(day , 10);
		if ((month == 12 && day >= 22) || (month == 1 && day <= 20)) {
			return "魔羯座";
		} else if ((month == 1 && day >= 21) || (month == 2 && day <= 19)) {
			return "水瓶座";
		} else if ((month == 2 && day >= 20) || (month == 3 && day <= 20)) {
			return "双鱼座";
		} else if ((month == 3 && day >= 21) || (month == 4 && day <= 20)) {
			return "白羊座";
		} else if ((month == 4 && day >= 21) || (month == 5 && day <= 21)) {
			return "金牛座";
		} else if ((month == 5 && day >= 22) || (month == 6 && day <= 21)) {
			return "双子座";
		} else if ((month == 6 && day >= 22) || (month == 7 && day <= 22)) {
			return "巨蟹座";
		}  else if ((month == 7 && day >= 23) || (month == 8 && day <= 23)) {
			return "狮子座";
		}  else if ((month == 8 && day >= 24) || (month == 9 && day <= 23)) {
			return "处女座";
		}  else if ((month == 9 && day >= 24) || (month == 10 && day <= 23)) {
			return "天秤座";
		}  else if ((month == 10 && day >= 24) || (month == 11 && day <= 22)) {
			return "天蝎座";
		} else if ((month == 11 && day >= 23) || (month == 12 && day <= 21))  {
			return "射手座";
		}
		return "";
	}
	//设年份
	function set_year(){
		
		$("#info_birthday_month").enable(false);
		$("#info_birthday_day").enable(false)
		var year_option=[];
		var ye=(new Date()).getFullYear();
		for(var i=ye;i>=1990;i--){
			year_option.push('<option value="'+i+'">'+i+'</option>');
		}
		year_option=year_option.join(" ");
		$("#info_birthday_year").append(year_option).change(set_month);
		
		
	}
	//设月份
	function set_month(){
		if($("#info_birthday_year option:selected").length==1){
			if($("#info_birthday_year option:selected").val()!=""){
					var ye=(new Date()).getYear();
				if($("#info_birthday_year option:selected").val()==ye){
					var endMonth=(new Date()).getMonth()+1;
				}else{
					var endMonth=12;
				}
				var monthhtml=[];
				for(var i=1;i<=endMonth;i++){
					monthhtml.push('<option value="'+i+'">'+i+'</option>');
				}
				$("#info_birthday_month").empty().append("<option>-月份-</option>").append(monthhtml.join(''));
				$("#info_birthday_month").change(set_day).enable(true);
			}
		}
	}
	//设天数
	function set_day(){
		var $year=$("#info_birthday_year option:selected").val();
		var $month=$("#info_birthday_month option:selected").val();
		var dayday={1:31,2:get29day($year),3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31};
		if($year!="" ||  $month!=""){
			set_star($month,1);//设定星座
			var day_option=[];
			
			if($year==(new Date()).getYear() && $month==(new Date()).getMonth()+1){
				var endday=(new Date()).getDate();
			}else{
				var endday=dayday[$month]
			}
			//for(var i=1;i<=dayday[$month];i++){
			for(var i=1;i<=endday;i++){
				day_option.push('<option value="'+i+'">'+i+'</option>');
			}
			day_option=day_option.join("");
			$("#info_birthday_day").empty().append("<option>请选择</option>").append(day_option).enable(true).change(function(){
					//设定星座
					set_star($month,$("#info_birthday_day option:selected").val());
			});
		}
	}
	function get29day(year){
		return new Date(year , 2 , 0).getDate(); 
	}
	//设定星座
	function set_star($month ,$day){
		var star=getStar($month,$day);
		$("#info_star_select option:eq(0)").html(star);
		$("#info_star").val(star);
		//绑定事件
		$("#info_birthday_year").change(set_month);
		$("#info_birthday_month").change(set_day);
	}
	    set_year() ;
    //同意条款
	$("#user_is_to_agree").bind("blur",function(){$(this).trigger("input.check")})
	   $("#user_is_to_agree").bind("input.check", function(){
            if ($("#user_is_to_agree:checked").length) {
                 $("#user_is_to_agree").parent().removeClass("red01");
            }
            else { $("#user_is_to_agree").parent().addClass("red01");
              
            }
        })

        
		




    });//end ready
$.fn.remoteCheckMail=function(){
	var $this=$(this);
	  try {
            remote_check = true;
            $.ajax({
                type: "POST",
                url: ajaxurl + "",
                dataType: "json",
                data: {
                    "user_email": $this.val()
                },
                success: function(msg){
                    if (msg.result==true) {
                        //通过是否存在验证
						remoteResult=true;
                    }else {
                        //用户名重复
						remoteResult=false
                        $this.input_error("此邮箱已经注册")
                    }
                    remote_check = false;
                }
            });
        } 
        catch (e) {
			alert("检查邮箱出错了!")
        } 
}  

    
})(jQuery)
