
function validate_download()
{
	var formele = document.forms["downloadform"].elements;

	if ( !formele['user_name'].value.length )
	{
		alert('Enter your name');
		return;		
	}

	var x = formele['user_email'].value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(x)) 
	{
		alert('Incorrect email address');
		return;		
	}
	
	document.forms["downloadform"].submit();
}

function validate_upload()
{
	var formele = document.forms["downloadform"].elements;

	
	document.forms["downloadform"].submit();
}


function validate()
{
	var formele = document.forms["taskmanageform"].elements;

	if ( !checkIntegerValue(formele["display"], true, 1,15) )
		return;
		
	if ( formele["appid[]"].selectedIndex == -1 )
	{
		alert("Select any Application");
		formele["appid[]"].focus();
		return;
	}
	
	switch (document.getElementById("tasktypeid").value)
	{
		case "3" : // minutely
			if ( !checkIntegerValue(formele["minutely"], true, 1,180) )
				return;
		break;	
		
		case "4" :  // daily
			if ( !formele["dailyparams"][0].checked && !formele["dailyparams"][1].checked && !formele["dailyparams"][2].checked )
			{
				alert("Select any additional value");
				return;
			}
		
			if ( formele["dailyparams"][2].checked && !checkIntegerValue(formele["dailyperiod"], true, 2,30) )
				return;
		break;
		
		case "5" :  // weekly
			if ( !checkIntegerValue(formele["weeklyperiod"], true, 1,10) )
				return;
				
			var result = false;
			for ( var i = 0; formele["weeklydays[]"][i]; i++ )
				if ( formele["weeklydays[]"][i].checked )
					result = true;
			if ( !result )
			{
				alert("Select any weekday");
				return;
			}
		
			break;
		
		case "6" :  // monthly
		
			if ( !formele["monthlyparams"][0].checked && !formele["monthlyparams"][1].checked )
			{
				alert("Select any additional value");
				return;
			}
			
			if ( formele["monthlyparams"][0].checked && !checkIntegerValue(formele["monthlyday"], true, 1,30) )
				return;
			
			var result = false;
			for ( var i = 0; formele["monthes[]"][i]; i++ )
				if ( formele["monthes[]"][i].checked )
					result = true;
			if ( !result )
			{
				alert("Select any month");
				return;
			}
			
		break;
	}
	document.forms["taskmanageform"].submit();
}

//////////////////////////////////////////////////////////////////////////////////
function checkIntegerValue(ctrlIntf, isRequired, minValue, maxValue)
{
	var checkedValue = ctrlIntf.value;	
	var message = "";
	while (true)
	{
		if (checkedValue == "")
		{
			if (isRequired) 
			{
				message = "You may not enter a blank value into the required field.";
				break;
			}
			else
			{
				return true;
			}			
		}
		
		var intValue = parseInt(checkedValue, 10);
		if (isNaN(intValue) || (checkedValue.indexOf("-0") != -1) || (intValue.toString(10).length != checkedValue.length))
		{
			message = '"' + checkedValue + '" is not a valid integer value.';
			break;
		}
		
		if ((!isNaN(minValue) && intValue < minValue) || (!isNaN(maxValue) && intValue > maxValue))
		{
			message = '"' + checkedValue + '" is out of range. The valid range is ' + minValue + '-' + maxValue + '.';
			break;
		}		
		return true;
	}
	alert(message);
	ctrlIntf.focus();
	return false;
}

