function validateCompetition(formObj)
{
	if (formObj.UploadImage.value.length>4)
	{
		var ext = formObj.UploadImage.value.substr(formObj.UploadImage.value.length-4,4).toUpperCase();
		if (ext!=".JPG" && ext!=".GIF")
		{
            alert("Invalid Image File Extension. Image File can have one of the following extensions: GIF, JPG.");
            selectElement(formObj.UploadImage);
            return false;
		}
	}
	else if (formObj.UploadImage.value.length>0)
	{
		alert("Please select a valid Image File to upload or leave this field blank.");
        selectElement(formObj.UploadImage);
        return false;
    }
    if (formObj.Description.value.length==0)
    {
        alert("Please enter Competition Description.");
        selectElement(formObj.Description);
        return false;
    }
    if (formObj.Description.value.length>1000)
    {
        alert("Maximum Length of  Competition Description is 1000 symbols.");
        selectElement(formObj.Description);
        return false;
    }
    if (formObj.PrizeInfo.value.length==0)
    {
        alert("Please enter Competition Prize Info.");
        selectElement(formObj.PrizeInfo);
        return false;
    }
    if (formObj.PrizeInfo.value.length>500)
    {
        alert("Maximum Length of  Competition Prize Info is 500 symbols.");
        selectElement(formObj.PrizeInfo);
        return false;
    }
    if (formObj.CloseDay.value.length==0)
    {
        alert("Please enter Close Day.");
        selectElement(formObj.CloseDay);
        return false;
    }
    if (!validateInt(formObj.CloseDay.value) || parseInt(formObj.CloseDay.value,10)>31)
    {
        alert("Please enter valid Close Day.");
        selectElement(formObj.CloseDay);
        return false;
    }
    if (!validateInt(formObj.CloseMonth.value) || parseInt(formObj.CloseMonth.value,10)>12)
    {
        alert("Please enter valid Close Month.");
        selectElement(formObj.CloseMonth);
        return false;
    }
    if (!validateInt(formObj.CloseYear.value) || parseInt(formObj.CloseYear.value,10)<2003 || parseInt(formObj.CloseYear.value,10)>2099)
    {
        alert("Please enter valid Close Year.");
        selectElement(formObj.CloseYear);
        return false;
    }
    return true;
}

function validateCompetitionParticipant(formObj)
{
    if (formObj.Name.value.length==0)
    {
        alert("Please enter Name.");
        selectElement(formObj.Name);
        return false;
	}
    if (invalidEmail(formObj.Email.value))
    {
        alert("Please enter valid Email.");
        selectElement(formObj.Email);
        return false;
	}
    if (formObj.Address.value.length==0)
    {
        alert("Please enter Address.");
        selectElement(formObj.Address);
        return false;
	}
    if (formObj.Address.value.length>255)
    {
        alert("Maximum length of Address is 255 symbols.");
        selectElement(formObj.Address);
        return false;
	}
	return true;
}
function enableImageUpload()
{
	if (document.frmCompetition.DeleteOldImage.checked)
	{
		document.frmCompetition.UploadImage.disabled=false;
	}
	else
	{
		document.frmCompetition.UploadImage.value="";
		document.frmCompetition.UploadImage.disabled=true;
	}
}

function invalidEmail(email)
{
	at_loc = email.indexOf("@");
	dot_loc = email.indexOf(".", at_loc);	
	comma = email.indexOf(",");	
	spaces = email.indexOf(" ");	
	last_dot = email.lastIndexOf(".") + 1;	
	len = email.length;
	if ((at_loc > 0) && (dot_loc > (at_loc + 1)) &&
		(comma == -1) && (spaces == -1) &&
        (len - last_dot >= 2) && (len - last_dot <= 3))
		return false;
	else
		return true;
}

function validateInt(s)
{
	if (s.length==0) return false;
	var regExp = new RegExp("[^\\d]");
	if (regExp.test(s)) return false;
	var n = parseInt(s);
	if (isNaN(n) || n<=0) return false;
	return true;
}
