function validateItem(element,expression,error,min,max)
{	
	if (expression == "" && min == 0 && max == 0)
	{
		if (element.value.length == 0)
		{
			element.focus();
			error.style.display='';
			return false;
		}
		else
		{
			error.style.display='none';
			return true;
		}
	}
	
	var reg = expression!='' ? new RegExp(expression) : null;
	if((reg!=null && !reg.test(element.value)) || element.value.length<min || element.value.length>max) {
		element.focus();
		error.style.display='';
		return false;
	} else {
		error.style.display='none';
	}
		
	return true;
}

function isEmpty(elementIdToValidate, msgExpression) {
	var element = document.getElementById(elementIdToValidate);
	
	if (element.value == "") {
		document.getElementById(msgExpression + '$Err').style.display = '';
		return true;
	}
	
	return false;
}

function isIntFromToCorrect(fromID, toID) {
	var fromElement = $(fromID);
	var toElement = $(toID);
	
	if (fromElement != null && toElement != null) {
		if (fromElement.value != "" && toElement.value != "") {
			var from = parseInt(fromElement.value);
			var to = parseInt(toElement.value);
			
			if (from > to) {
				return false;
			}
			else {
				return true;
			}
		}
	}
	
	return true;
}

function isDateFromToCorrect(fromID, toID) {
	var from_date_year = $(fromID + '_year');
	var from_date_month = $(fromID + '_month');
	var from_date_day = $(fromID + '_day');
	
	var to_date_year = $(toID + '_year');
	var to_date_month = $(toID + '_month');
	var to_date_day = $(toID + '_day');
	
	if (from_date_year != null && from_date_month != null && from_date_day != null && to_date_year != null && to_date_month != null && to_date_day != null) {
		if (from_date_year.value != "" && from_date_month.value != "" && from_date_day.value != "" && to_date_year.value != "" && to_date_month.value != "" && to_date_day.value != "") {
			var dateFrom = new Date();
			var dateTo = new Date();
			
			dateFrom.setFullYear(from_date_year.value, from_date_month.value - 1, from_date_day.value);
			dateTo.setFullYear(to_date_year.value, to_date_month.value - 1, to_date_day.value);
			
			if (dateFrom > dateTo) {
				return false;
			}
			else {
				return true;
			}
		}
	}
	return true;
}

function isDropDownListCorrect(id, errMsgId) {
	var ddl = $(id);
	var err = $(errMsgId);
	
	if (ddl != null) {
		if (ddl.value <= 0) {
			err.style.display = '';
			return true;
		}
	}
	
	return false;
}

function isDateCorrect(id, errMsgId) {
	var date_year = $(id + '_year');
	var date_month = $(id + '_month');
	var date_day = $(id + '_day');
	var err = $(errMsgId);
	
	if (date_year != null && date_month != null && date_day != null) {
		if (date_year.value != "" && date_month.value != "" && date_day.value != "") {			
			return false;
		}
	}
	
	err.style.display = '';
	return true;
}

function isDateCorrectAlert(id) {
	var date_year = $(id + '_year');
	var date_month = $(id + '_month');
	var date_day = $(id + '_day');
	
	if (date_year != null && date_month != null && date_day != null) {
		if (date_year.value != "" && date_month.value != "" && date_day.value != "") {			
			return true;
		}
	}
		
	return false;
}

function isDateCorrectAndInFuture(id) {
	var date_year = $(id + '_year');
	var date_month = $(id + '_month');
	var date_day = $(id + '_day');
	
	if (date_year != null && date_month != null && date_day != null) {
		if (date_year.value != "" && date_month.value != "" && date_day.value != "") {	
			var now = new Date();
			var someDate = new Date();
			
			someDate.setFullYear(date_year.value, date_month.value - 1, date_day.value);
			
			if (someDate < now)	{
				alert('Date is not in future.');
				return false;
			}
			else {			
				return true;
			}
		}
	}
	
	alert('Date is incirrect or empty.');	
	return false;
}