﻿var EMPTY_STRING = "";
var emailRegExp = /^([a-zA-Z0-9]+[\w\.-]?)*[a-zA-Z0-9]@([a-zA-Z0-9]+[\w\.-]?)*[a-zA-Z0-9]\.[a-zA-Z]{2,9}$/

function StringIsEmpty(str) {
	if(str.replace(/\s/g, EMPTY_STRING) == EMPTY_STRING) {
		return true;
	}

	return false;
}

function EmailFormat(String) {
	return emailRegExp.test(String);
}

function CheckValid(id) {
	if (StringIsEmpty($("#" + id).val())) {
		$("#" + id).addClass("err");
		return false;
	}
	else {
		$("#" + id).removeClass("err");
		return true;
	}
}

function SetValidCssClass(controlId, dataValid) {
	if (dataValid) {
		$("#" + controlId).removeClass("err");
	} else {
		$("#" + controlId).addClass("err");
	}
}

function checkLogin(userlogin, minLoginLength, maxLoginLength) {
	var errMsg = EMPTY_STRING;

	if (StringIsEmpty(userlogin)) {
		errMsg = 'Введите имя пользователя';
	} else if (userlogin.length < minLoginLength || userlogin.length > maxLoginLength) {
		errMsg = 'Длина имени пользователя должна быть от ' + minLoginLength + ' до ' + maxLoginLength + ' символов';
	} else {
		re = /^\w+$/;
		if (!re.test(userlogin)) {
			errMsg = 'Имя пользователя может состоять только из букв латинского алфавита и цифр';
		}
	}

	return errMsg;
}

function checkPassword(userPassword, userLogin, minPasswordLength, maxPasswordLength) {
	var errMsg = EMPTY_STRING;

	if (StringIsEmpty(userPassword)) {
		errMsg = 'Введите пароль';
	} else if (userPassword.length < minPasswordLength || userPassword.length > maxPasswordLength) {
		errMsg = 'Длина пароля должна быть от ' + minPasswordLength + ' до ' + maxPasswordLength + ' символов';
	} else if (userPassword == userLogin) {
		errMsg = 'Имя пользователя и пароль не должны совпадать';
	}
	
	return errMsg;
}
var err1 = false, err2 = false;

function EmailValidationNonEmpty(controlId, errorsource)
{
	if (StringIsEmpty($(controlId).val()))
	{
		$(controlId).addClass("err");
		err1 = true;
		return false;
	}
	else
	{
		if (err1 == true)
		{
			$(controlId).removeClass("err");
			err1 = false;
		}
		return true;
	}
}

function EmailValidationFormat(controlId)
{
	$email = $(controlId).val();
	if (StringIsEmpty($email) || EmailFormat($email))
	{
		if (err2 == true)
		{
			$(controlId).removeClass("err");
			err2 = false;
		}
		return true;
	}
	else
	{
		$(controlId).addClass("err");
		err2 = true;

		return false;
	}

}
