﻿// before submit
// function preSignUp(formData, jqForm, options) {
function preSignUp() {
	$("#btn_Submit").hide();
	$("#areaSubmitBtn").css({ color: sitecfg.infoMsgColor, fontSize: "15px", fontStyle: "normal", fontFamily: "Tahoma" });
	$("#areaSubmitBtn").html(A0031);
	if ($("#em_submit").length>0) $.MyMessage({ msg: "", DpID: "#em_submit" });
    return true;
}
// after submit
function submitSignUp(data) {
	if (data.status == "1") {
		if (cmd == "edit") {
			location.replace("./?ok=1");
		}
		else {
			//Login Mail Modify
			//$.getJSON("/mail/login_mail_send.asp?eid="+$("#userid").val()+"&eaddr="+$("#email").val(),
			//function(data){
			//	if (data.status == "1") {
					location.href="finish.rwp?userid="+$("#userid").val()+"&email="+$("#email").val()+"&ecode="+$("#ecode").val()+"&echk=off";
			//	}else{
			//		location.href="finish.rwp?userid="+$("#userid").val()+"&email="+$("#email").val()+"&ecode="+$("#ecode").val()+"&echk=on";
			//	}
			//});
		}
	}
	// result fail
	else {
		$("#areaSubmitBtn").html(" ");
		$("#btn_Submit").show();

		var strMsg = "<div class='em_li_title'>Error occured! Confirm message(s) below.</div>";
		if (data.status == "9") {
			if (typeof(data.messages.error) != 'undefined') {
				for (var i=0; i<data.messages.error.length; i++) {
					strMsg += "<li class='em_li'>"+data.messages.error[i]+"</li>";
				}
			}
			else if (typeof(data.messages.status) != 'undefined') {
				for (var i=0; i<data.messages.status.length; i++) {
					strMsg += "<li class='em_li'>"+data.messages.status[i]+"</li>";
				}
			}
			strMsg = strMsg.replace("/user/password", "/user/password.rwp");
		}
		else {
			strMsg += "<li class='em_li'>"+data.error+"</li>";
		}

		$.MyMessage({ msg: strMsg, DpID: "#em_submit", height: "100%", align: "left", img: "" });
		$(".em_li_title").css({ marginLeft: "20px", fontWeight: "bold", fontSize: "13px" });
		$(".em_li").css({ marginLeft: "25px", listStyle: "disc" });
	}
}
// default config
$.validator.setDefaults({
	submitHandler: function() {
		var act_url;
		if (cmd=="edit") act_url = "edit_proc.rwp";
		else act_url = "signup_proc.rwp";

		$("#"+cmd+"Form").ajaxSubmit({
			target:			"#"+cmd+"Form",
			beforeSubmit:	preSignUp,
			success:		submitSignUp,
			url:			act_url,
			type:			"get",
			dataType:		"json"
		});
	}
});
// username validator
$.validator.addMethod("id_validator", function(value) {
	var rtn = 0;
	if (!isEngNum(value)) ++rtn;
	if (!isEng(value.substring(0,1))) ++rtn;
	return rtn==0 ? true : false;
}, A0006);
// pass validator
$.validator.addMethod("pw_validator", function(value) {
	var rtn = 0;
	if (!isEngNumChar(value)) ++rtn;
	if (cmd!="edit") {
		if (value.length<5 || value.length>15) ++rtn;
	}
	return rtn==0 ? true : false;
}, A0008);
$.validator.addMethod("pw_validator2", function(value) {
	var rtn = 0;
	if (value==$('#userid').val()) ++rtn;
	return rtn==0 ? true : false;
}, A0073);

// If change pass, new pass validator
$.validator.addMethod("newpw_validator", function(value) {
	var rtn = 0;
	if ($("#is_pw_chg").val()=="1") {
		if (!isEngNumChar(value)) ++rtn;
		if (value.length<5 || value.length>15) ++rtn;
	}
	return rtn==0 ? true : false;
}, A0008);
$.validator.addMethod("newpw_validator2", function(value) {
	var rtn = 0;
	if (value==$('#userid').val()) ++rtn;
	return rtn==0 ? true : false;
}, A0073);

/*
// If change pass, confirm new pass
$.validator.addMethod("newpw_re_validator", function(value) {
	var rtn = 0;
	if ($("#is_pw_chg").val()=="1") {
		if ($("#newpw").val() != $("#newpw_re").val()) ++rtn;
	}
	return rtn==0 ? true : false;
}, A0009);
*/

$().ready(function() {
	/*
	// show loading indicator
	var loader = jQuery('<div id="loader"><img src="http://roi.ltcdn.com/dsgn/en/sub_img/join/btn_pc.gif" alt="loading..." /></div>')
		.css({position: "relative", top: "1em", left: "25em"})
		.hide()
		.appendTo("body");
	jQuery().ajaxStart(function() {
		loader.show();
	}).ajaxStop(function() {
		loader.hide();
	}).ajaxError(function(a, b, e) {
		throw e;
	});

	// hide top error container
	$(".cmxform").keydown(function(e) {
		if ($("#em_submit").length>0) $.MyMessage({ msg: "", DpID: "#em_submit"});
	});
	*/

	// editing finish
	if ($("#is_ok").val() == "1") {
		$.MyMessage({ msg: A0036, color:sitecfg.infoMsgColor, DpID: "#em_submit", img: '<img src="http://roi.ltcdn.com/dsgn/en/common/correct.gif" calss="vmiddle"> '});
	}

	var email_cmd = "";
	if (cmd == "edit") email_cmd = "?cmd=EDIT";

	$("#"+cmd+"Form").validate({
		rules: {
			userid: {
				required: true,
				minlength: 6,
				maxlength: 25,
				id_validator: true,
				remote: "/user/common/chk_id.rwp"
			},
//			userid_re: {
//				required: true,
//				equalTo: "#userid"
//			},
			userpw: {
				required: true,
				pw_validator: true,
				pw_validator2: true
			},
			userpw_re: {
				required: true,
				equalTo: "#userpw"
			},
			newpw: {
				newpw_validator: true,
				newpw_validator2: true
			},
			newpw_re: {
				//newpw_re_validator: true
				//required: true,
				equalTo: "#newpw"
			},
			email: {
				required: true,
				email: true,
				remote: "/user/common/chk_email.rwp" + email_cmd
			},
//			email_re: {
//				required: true,
//				equalTo: "#email"
//			},
			gender: "required",
			dob_m: "required",
			dob_d: "required",
			dob_y: "required",
			country: "required",
			state: "required",
			zip: "required",
			agree: "required"
			,inviter_id: {
				remote: "/user/common/chk_inviter.rwp"
			}
		},
		messages: {
			userid: {
				minlength: A0006,
				maxlength: A0006,
				remote: A0007
			},
//			userid_re: {
//				equalTo: A0020
//			},
			userpw: {
				minlength: A0008,
				maxlength: A0008
			},
			userpw_re: {
				equalTo: A0009
			},
			email: {
				remote: $.format(A0013)
			},
//			email_re: {
//				equalTo: A0018
//			},
			gender: A0014,
//			dob_m: "Month is required.",
//			dob_d: "Day is required.",
//			dob_y: "Year is required.",
			dob_m: "Required.",
			dob_d: "Required.",
			dob_y: "Required.",
			country: A0072,
			state: A0016,
			agree: A0017
			,inviter_id: "Not exists user."
		},
		// error container
		errorPlacement: function(error, element) {
			/*
			if (element.attr("name") == "gender" )
				error.insertAfter("#lblGenderF");
			else if (element.attr("name") == "agree" )
				error.insertAfter("#em_agree");
			else if (element.attr("name") == "dob_m" || element.attr("name") == "dob_d" || element.attr("name") == "dob_y" )
				error.insertAfter("#em_dob");
			else
				error.insertAfter(element);
			*/
			if (element.attr("name") == "dob_m" || element.attr("name") == "dob_d" || element.attr("name") == "dob_y") {
				FixDobMargin();
			}
			if ($("#em_"+element.attr("name")).length > 0) {
				error.appendTo("#em_"+element.attr("name"));
			}
			else {
				error.insertAfter(element);
			}

		},
		errorElement: "tt"
	});
	$("#dob_m, #dob_d, #dob_y").change(function() {
		FixDobMargin();
	});
});

function FixDobMargin() {
	if ($("#dob_m").attr("selectedIndex")!=0) {
		$("#em_dob_d").css("marginLeft", "-3px");

		if ($("#dob_d").attr("selectedIndex")!=0) {
			$("#em_dob_y").css("marginLeft", "0px");
		}
	}
	else {
		$("#em_dob_d, #em_dob_y").css("marginLeft","-10px");
	}
}

function chkCountry() {
	if ($('#country').val() == 'US') {
		$('#stateArea, #zipArea, #em_state, #em_zip').show();

		if ($('#zip').val()=='99999') {
			$('#state').val('');
			$('#zip').val('');
		}
	}
	else {
		$('#stateArea, #zipArea, #em_state, #em_zip').hide();
		$('#state').val('NEW YORK');
		$('#zip').val('99999');
	}
}