function SubmitLoginForm(submitForm)
{
	var password = document.login_form.password.value;
	var login = Trim(document.login_form.login.value);
	
	var MIN_LOGIN_LENGTH = parseInt($("#min_login_length").val());
	var MIN_PASSWORD_LENGTH = parseInt($("#min_password_length").val());
	
	if (login.length < MIN_LOGIN_LENGTH)
	{
		alert(CONSTS.get("LNG_LOGIN_SMALL"));
		return false;
	}

	if (password.length < MIN_PASSWORD_LENGTH)
	{
		alert(CONSTS.get("LNG_PASSWORD_SMALL"));
		return false;
	}
	
	if (submitForm)
	{
		document.login_form.submit();
	}
	return true;
}

function RetrievePassword()
{
	var login = Trim(GetElementValue("retrievePasswordLogin"));
	var privateKey = Trim(GetElementValue("private_key"));

	var isReturn = true;
	var MIN_LOGIN_LENGTH = parseInt($("#min_login_length").val());
	if (!login || login.length < MIN_LOGIN_LENGTH)
	{
		alert(CONSTS.get("LNG_PASSWORD_SMALL_TEMPLATE").replace("%MIN_LOGIN_LENGTH%", MIN_LOGIN_LENGTH));
	}
	else if (IsEmpty(privateKey))
	{
		alert();
	}
	else
	{
		isReturn = false;
	}
	
	if (isReturn)
	{
		return false;
	}
	
	var parameterNames = 
	[
		"login",
		"private_key"
	];
	var parameterValues = 
	[
		login,
		privateKey
	];
	var queryString = UriSerialize(parameterNames, parameterValues);
	
	DisableButton("btnSendEmail");
	
	var retrievePasswordScript = "/retrieve_password.php";
	ajaxpage(retrievePasswordScript, OnSendEmail, queryString);
}

function OnSendEmail(result)
{
	result = parseInt(result);
	switch(result)
	{
		case ERR_IMAGE_CHECK_PASS:
			alert(CONSTS.get("LNG_EMPTY_CAPTCHA"));
			break;
		case ERR_LOGIN_INCORRECT:
			alert(CONSTS.get("LNG_LOGIN_INCORECT"));
			break;
		case ERR_UNKNOWN_USER:
			alert(CONSTS.get("LNG_UNKNOWN_USER"));
			break;
		case ERR_SEND_EMAIL:
			alert(CONSTS.get("LNG_CANT_SEND_EMAIL"));
			break;
		case ERR_UNCONFIRMED_EMAIL:
			alert(CONSTS.get("LNG_UNCONFIRMED_EMAIL"));
			break;
		case S_OK:
			alert(CONSTS.get("LNG_EMAIL_SENT"));
			break;
	}
	EnableButton("btnSendEmail");
}

function SwitchForms()
{
	SwitchVisibility("loginFormContainer");
	SwitchVisibility("retrievePasswordFormContainer");
	var formTitle = GetElement("formTitle");
	if (GetElement("loginFormContainer").style.display == "")
	{
		formTitle.innerHTML = CONSTS.get("LNG_SIGN_IN");
		SetFirstFieldFocus();
	}
	else
	{
		formTitle.innerHTML = CONSTS.get("LNG_FORGOT_PASSWORD_TITLE");
		SetFirstFieldFocus();
	}
}

$(function (){
	$("#switchFormsLink").click(SwitchForms);
	if (CONSTS)
	{
		$("#login").setLimit(parseInt($("#max_login_length").val())).setCounter(CONSTS.get("LNG_CHARS_REMAINING"));
	}
});
