( function($) {
	$( function() {
		// search form, hide it, search labels to modify, filter classes nocmx and error
	});

	$( function() {

		$().ready( function() {
			// avoid submitting from form directly with incorrect parameters
			$("#forgetForm").submit(function() {
				return false;
			});
			var validator = $("#forgetForm").validate( {
				errorClass: "red",
				onfocusin: function(element) {
					this.lastActive = element;
					// this.settings.unhighlight &&
				// this.settings.unhighlight.call( this, element,
				// this.settings.errorClass );
				// this.errorsFor(element).hide();
			},
			onfocusout: function(element) {
			},
			onkeyup: function(element) {
			},
			onclick: function(element) {
				//this.settings.unhighlight && this.settings.unhighlight.call( this, element, this.settings.errorClass );
				// this.errorsFor(element).hide();
			},
			highlight: function(element, errorClass) {
				$("#forgetForm").find("label[for=" + element.name + "]").css("color", "#F00");
				$("#forgetForm").find("label[for=" + element.name + "]").css("display", "block");

				/* set bg yellow */
				$("#forgetForm").find("label[for=" + element.name + "]").parent().css( {
					background: "#FEF7D0"
				});

			},
			unhighlight: function(element, errorClass) {
				$("#forgetForm").find("label[for=" + element.name + "]").css("color", "#746C61");
				$("#forgetForm").find("label[for=" + element.name + "]").css("display", "block");

				/* reset bg yellow */
				$("#forgetForm").find("label[for=" + element.name + "]").parent().css( {
					background: "none"
				});

			},
			check: function(element) {
				$("#forgetForm").find("label[for=" + element.name + "]").css("display", "block");
			},
			rules: {
				"account": {
					required: true,
					minlength: 5,
					maxlength: 75,
					email: true
				}
			},
			messages: {
				"account": {
					required: "Please enter E-mail address in the proper format (name@domain.com).",
					minlength: "Please enter E-mail address in the proper format (name@domain.com).",
					maxlength: "TPlease enter E-mail address in the proper format (name@domain.com).",
					email: "The E-mail address is invalid. Please enter E-mail address in the proper format (name@domain.com)."
				}
			}
			});

			$("#forgetForm #returnToLogin").click( function() {
				$("#login-email").css("display", "none");
				$("#login").css("display", "block");
				$("#ajaxLogin #password").attr("value", "");
			});

			$("#returnToLogin2").click( function() {
				$("#login-email-success").css("display", "none");
				$("#login").css("display", "block");
				$("#ajaxLogin #password").attr("value", "");
			});

			$("#login-email-success #closeLogin-email-success").click( function() {
				$("#login-email-success").css("display", "none");
			});

			$("#forgetForm #submit").click( function() {
				if (validator.form()) {
					$(this).forget();
				}
			});

			// for enter keyboard submit
				$("#forgetForm :input").each( function() {
					$(this).keypress( function(e) {
						var key = window.event ? e.keyCode : e.which;
						if (key.toString() == "13") {
							$("#forgetForm #submit").click();
						}
					});
				});
			});
	});

	$.fn.forget = function() {
		var options = {
			success: function(result) {
				//var jsonArray = eval(result); 
			// jsonObj = jsonArray[0];
			if (result.success == false) {
				$("#forgetForm #loginT #message").html(result.message);
				return;
			} else {
				$("#login-email-success").css("display", "block");
				$("#login-email").css("display", "none");
				$("#login-email-success #message").html(result.message);
				return;
			}
		},
		error: function(xhr, status) {
			if (xhr.status > 200 && xhr.status <= 500) {
				alert("error comminucation.");
			}
		},
		complete: function(xhr, status) {
			//var height = 130+$("#formPanl3").height(); 
			// $(window.parent.document).find("#submitPage").height(height);
		},
		dataType: "json"
		};

		$("#forgetForm").ajaxSubmit(options);
	}
})(jQuery);