﻿/*---------------------------------------------- Validate the controls for their values ------------------------------------*/
/*-----------------------------------------------       Vimalprasath : 07 - 05 -2008     -----------------------------------*/

    function wordlimit(txtInputBox,displayCtrlID,limit)
    {                        
        var displayCtrl = document.getElementById(displayCtrlID)                              
        var word_count = getWordCount(txtInputBox.value);
        var msg =  "Essay size: " + word_count + " word(s). Maximum limit is " + limit +" words."; 
        if(word_count>limit)
        {
            msg = msg +" Please remove " + (word_count-limit) + " word(s).";
            displayCtrl.style.color='red';
        }
        else
        {   
         displayCtrl.style.color='black';                                      
        } 
        displayCtrl.innerHTML =msg;
        return true;
    }
    
    function CheckEssayLimit(sender,args)
    {
     args.IsValid = (getWordCount(args.Value)>500?false:true);
    }
    function getWordCount(strIn)
    {
        var fullStr = strIn + " ";
        var initial_whitespace_rExp = /^[^A-Za-z0-9]+/gi;
        var left_trimmedStr = fullStr.replace(initial_whitespace_rExp, "");
        var non_alphanumerics_rExp = rExp = /[^A-Za-z0-9]+/gi;
        var cleanedStr = left_trimmedStr.replace(non_alphanumerics_rExp, " ");
        var splitString = cleanedStr.split(" ");
        var word_count = splitString.length -1;
        return word_count;
    }
    
function showContestRules()
{
    ShowOpup('ContestRules.aspx','contestrules',500,400);
}



function ShowOpup(url,winName,w,h)
{
var lPos = (screen.width) ? (screen.width-w)/2 : 0;
var tpos = (screen.height) ? (screen.height-h)/2 : 0;

window.open(url,winName,'location=0,status=0,scrollbars=1,left=' +lPos + ',top=' +tpos + ',width=' + w + ',height='+h);

}

// This function allows numbers only
// Used for ZIP code, pure Number validation
function acceptNumOnly()
{
	if(event.keyCode >= 48 && event.keyCode <= 57)
	{
		window.status = "";
		event.keyCode = event.keyCode;
	}	
	else
	{
		window.status = String.fromCharCode(event.keyCode) + " is not a valid character";
		event.keyCode = 0;		
	}
}

// This function allows Alphabets and Space
// Used for TelePhone Number validation
function acceptAlpha()
{
	if((event.keyCode >= 65 && event.keyCode <= 90) || 
		(event.keyCode >= 97 && event.keyCode <= 122) || event.keyCode == 32)
	{
		window.status = "";
		event.keyCode = event.keyCode;
	}	
	else
	{
		event.keyCode = 0;
	}
}

// This function allows numbers and special characters like " - ( ) " and Space
// Used for TelePhone Number validation
function acceptTeleChar()
{		
	//alert(event.keyCode)
		if ((event.keyCode >= 48 && event.keyCode <= 57) ||
		//vigTS31 start
			(event.keyCode == 45) ||
		//vigTS31 end
			(event.keyCode == 40) || (event.keyCode == 41) || (event.keyCode == 44) ||
			(event.keyCode == 32 ))
	{		
		window.status = "";
		event.keyCode = event.keyCode;	
	}	
	else
	{
		window.status = String.fromCharCode(event.keyCode) + " is not a valid character";
		event.keyCode = 0;
	}
}

// This function allows alphabets, numbers and special characters like " @ . , _ - " and Space
// Used for TelePhone Number validation
function acceptEmailChar()
{			
/******	 64 = @     46 = . (dot)      44 = , (comma)        95 = _	(underscore)        45 = - (Hyphen)          38 = &  ******/

	if((event.keyCode >= 65 && event.keyCode <= 90) || 
		(event.keyCode >= 97 && event.keyCode <= 122) || 
		(event.keyCode >= 48 && event.keyCode <= 57) ||
		event.keyCode == 64 || event.keyCode == 46 || 
		event.keyCode == 44 || event.keyCode == 95 || 
		event.keyCode == 45 )
	{		
		window.status = "";
		event.keyCode = event.keyCode;
	}	
	else
	{
		window.status = String.fromCharCode(event.keyCode) + " is not a valid character";
		event.keyCode = 0;
	}
}



// Used for E-Mail Address validation
function validateEmail(addr) {
var invalidChars = '\/\'\\ ";:?!()[]\{\}^|';
for (i=0; i<invalidChars.length; i++) {
   if (addr.indexOf(invalidChars.charAt(i),0) > -1) {
      return 'E-mail address contains invalid characters';
   }
}
for (i=0; i<addr.length; i++) {
   if (addr.charCodeAt(i)>127) {
      return 'E-mail address contains non ascii characters';
   }
}

var atPos = addr.indexOf('@',0);
if (atPos == -1) {
   return 'E-mail address must contain an @';
}
if (atPos == 0) {
   return 'E-mail address must not start with @';
}
if (addr.indexOf('@', atPos + 1) > - 1) {
   return 'E-mail address must contain only one @';
}
if (addr.indexOf('.', atPos) == -1) {
   return 'E-mail address must contain a period in the domain name';
}
if (addr.indexOf('@.',0) != -1) {
   return 'Period must not immediately follow @ in E-mail address';
}
if (addr.indexOf('.@',0) != -1){
    return 'Period must not immediately precede @ in E-mail address';
}
if (addr.indexOf('..',0) != -1) {
   return 'Two periods must not be adjacent in E-mail address';
}
/*var suffix = addr.substring(addr.lastIndexOf('.')+1);
if (suffix.length != 2 && suffix != 'com' && suffix != 'net' && suffix != 'org' && suffix != 'edu' && suffix != 'int' && suffix != 'mil' && suffix != 'gov' & suffix != 'arpa' && suffix != 'biz' && suffix != 'aero' && suffix != 'name' && suffix != 'coop' && suffix != 'info' && suffix != 'pro' && suffix != 'museum') {
   return 'Invalid primary domain in email address';
}*/
return '';
}

//Used to trim a string [both left and right trim]
function trimAll(sString)
 {
    while (sString.substring(0,1) == ' ') {
        sString = sString.substring(1, sString.length);
    }
    while (sString.substring(sString.length-1, sString.length) == ' ') {
        sString = sString.substring(0,sString.length-1);
    }
    return sString;
 }
 
//This function shows / hides the other text box according to the selection of the control [check box / radio button] 
function hideShow(oCtrl, txtBox)
 {debugger;
    if((document.getElementById(oCtrl).checked) && (document.getElementById(txtBox).style.visibility == "hidden"))
     {
        document.getElementById(txtBox).style.visibility = "visible";
        return true;
     }
    else if((!document.getElementById(oCtrl).checked) && (document.getElementById(txtBox).style.visibility == "visible"))
     {
        document.getElementById(txtBox).style.visibility = "hidden";
        return true;
     }
 } 

function hideShowToggle(oCtrl, txtBox,show)
 {
    if((document.getElementById(oCtrl).checked))
     {
        if(show)
        {
            document.getElementById(txtBox).style.display = "inline";
             document.getElementById(txtBox).style.visibility = "visible";

}
        else
        {
            document.getElementById(txtBox).style.display = "none";    
             document.getElementById(txtBox).style.visibility = "hidden";
            }                               
     } 
     else
     {
        if(show)
        {
           document.getElementById(txtBox).style.display = "none";    
             document.getElementById(txtBox).style.visibility = "hidden";
            }
        else
        {
              document.getElementById(txtBox).style.display = "inline";
             document.getElementById(txtBox).style.visibility = "visible";
            }
     }    
 } 
 
 function mutualExCheboxes(chk,otherCheboxID)
 {
 if(chk.checked)
     document.getElementById(otherCheboxID).checked =false;
 
 }

function frmCheckProspect()
 {
    
   if(document.getElementsByName("optSelectSurvey")[0].checked)
    {
        return true;
    }
   else if(document.getElementsByName("optSelectSurvey")[1].checked)
    {
        return true;
    }
   else if(document.getElementsByName("optSelectSurvey")[2].checked)
    {
        return true;
    }
   else 
    {
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should select one in the above";
        document.getElementById("lblErrorMsg").visibility = "visible";
        document.getElementsByName("optSelectSurvey")[0].focus();
        return false;
    }
   document.getElementById("lblErrorMsg").innerText = "";
   return true;
 }
 
 
 function frmCheckContest()
  {
    if(document.getElementsByName("optInterest")[0].checked)
    {
        if(trimAll(document.getElementById("txtPlsHorses").value) == "")
         {
            document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter number of horses";
            document.getElementById("lblErrorMsg").visibility = "visible";
            document.getElementById("txtPlsHorses").focus();
            return false;
         }
        return true;
    }
   else if(document.getElementsByName("optInterest")[1].checked)
    {
        if(trimAll(document.getElementById("txtProfHorses").value) == "")
         {
            document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter number of horses";
            document.getElementById("lblErrorMsg").visibility = "visible";
            document.getElementById("txtProfHorses").focus();
            return false;
         }
         if(trimAll(document.getElementById("txtProfEventsYear").value) == "")
         {
            document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter Events / Year";
            document.getElementById("lblErrorMsg").visibility = "visible";
            document.getElementById("txtProfEventsYear").focus();
            return false;
         }
        return true;
    }
   else if(document.getElementsByName("optInterest")[2].checked)
    {
         if(trimAll(document.getElementById("txtBrdFacHorses").value) == "")
         {
            document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter number of horses";
            document.getElementById("lblErrorMsg").visibility = "visible";
            document.getElementById("txtBrdFacHorses").focus();
            return false;
         }
        return true;
    }
   else 
    {
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should select one PRIMARY interest in horses";
        document.getElementById("lblErrorMsg").visibility = "visible";
        document.getElementsByName("optInterest")[0].focus();
        return false;
    }
  }


/* This function used to check the Survey owner page. All the questions are mandotary so they should be answered 
   It checks any one answer is selected or not and displays error message to the user if they don't answer any question.*/  
function frmCheckSurveyOwner() 
 {
    //Question 1 checking
    var objQns1 = new Array(7);
    var j = 1;
    var flag = false;
    for (i = 97; i <= 103; i++)                                                     // Used the ASCII code for a - 97 to g - 103
     {
       var oID = "chkAns1" +  String.fromCharCode(i);                               // Generates the control ID
       objQns1[j] = document.getElementById(oID);
       if(objQns1[j].checked)
        {
            flag = true;
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 1";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns1[1].focus();
        return false;
     }
    
    //Question 2 checking
    var objQns2 = new Array(4);
    j = 1;
    var flag = false;
    for (i = 97; i <= 100; i++)                                                        // Used the ASCII code for a - 97 to d - 100
     {
       var oID = "rdoAns2" +  String.fromCharCode(i);                                   // Generates the control ID
       objQns2[j] = document.getElementById(oID);
       if(objQns2[j].checked)
        {
            flag = true;
            if (j == 4)
             {
                if(document.getElementById("txtBoardFacilityOther").value == "")
                 {
                    document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter text in the other for " + objQns2[j].value;
                    document.getElementById("lblErrorMsg").visibility = "visible";
                    document.getElementById("txtBoardFacilityOther").focus();
                    return false;
                 }
             }
             break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 2";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns2[1].focus();
        return false;
     }
    
    //Question 3 checking 
    var objQns3 = new Array(2);
    j = 1;
    var flag = false;
    for (i = 97; i <= 98; i++)                                                      // Used the ASCII code for a - 97 to b - 98
     {
       var oID = "rdoAns3" +  String.fromCharCode(i);                               // Generates the control ID
       objQns3[j] = document.getElementById(oID);
       if(objQns3[j].checked)
        {
            flag = true;
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 3";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns3[1].focus();
        return false;
     }
     
    //Question 4 checking 
    var objQns4 = new Array(8);
    j = 1;
    var flag = false;
    for (i = 97; i <= 104; i++)                                                  // Used the ASCII code for a - 97 to h - 104
     {
       var oID = "chkAns4" +  String.fromCharCode(i);                           // Generates the control ID
       objQns4[j] = document.getElementById(oID);
       if(objQns4[j].checked)
        {
            flag = true;
            if (j == 8 || document.getElemenyById("chkAns4h").checked)
             {
                if(document.getElementById("txtProtocolsOther").value == "")
                 {
                    document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter text in the other for " + document.getElemenyById("chkAns4h").value;
                    document.getElementById("lblErrorMsg").visibility = "visible";
                    document.getElementById("txtProtocolsOther").focus();
                    return false;
                 }
             }
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 4";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns4[1].focus();
        return false;
     }
    
    //Question 5 checking 
    var objQns5 = new Array(2);
    j = 1;
    var flag = false;
    for (i = 97; i <= 98; i++)                                                  // Used the ASCII code for a - 97 to b - 98
     {
       var oID = "rdoAns5" +  String.fromCharCode(i);                           // Generates the control ID
       objQns5[j] = document.getElementById(oID);
       if(objQns5[j].checked)
        {
            flag = true;
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 5";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns5[1].focus();
        return false;
     }  



    //Question 6 checking 
    var objQns6 = new Array(5);
    j = 1;
    var flag = false;
    for (i = 97; i <= 101; i++)                                                  // Used the ASCII code for a - 97 to e - 101
     {
       var oID = "rdoAns6" +  String.fromCharCode(i);                           // Generates the control ID
       objQns6[j] = document.getElementById(oID);
       if(objQns6[j].checked)
        {
            flag = true;
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 6";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns6[1].focus();
        return false;
     }


    //Question 7 checking 
    var objQns7 = new Array(12);debugger;
    j = 1;
    var flag = false;
    for (i = 97; i <= 108; i++)                                                  // Used the ASCII code for a - 97 to l - 108
     {
       var oID = "chkAns7" +  String.fromCharCode(i);                           // Generates the control ID
       objQns7[j] = document.getElementById(oID);
       if(objQns7[j].checked)
        {
            flag = true;
            if (j == 12 || document.getElementById("chkAns7l").checked)
             {
                if(document.getElementById("txtProductOther").value == "")
                 {
                    document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter text in the other for " + document.getElementById("chkAns7l").value;
                    document.getElementById("lblErrorMsg").visibility = "visible";
                    document.getElementById("txtProductOther").focus();
                    return false;
                 }
             }
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 7";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns7[1].focus();
        return false;
     }


    //Question 8 checking 
    var objQns8 = new Array(3);
    j = 1;
    var flag = false;
    for (i = 97; i <= 99; i++)                                                  // Used the ASCII code for a - 97 to c - 99
     {
       var oID = "rdoAns8" +  String.fromCharCode(i);                           // Generates the control ID
       objQns8[j] = document.getElementById(oID);
       if(objQns8[j].checked)
        {
            flag = true;
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 8";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns8[1].focus();
        return false;
     }
       
 }


/* This function used to check the Survey others page. All the questions are mandotary so they should be answered 
   It checks any one answer is selected or not and displays error message to the user if they don't answer any question.*/  
function frmCheckSurveyOther() 
 {
    //Question 1 checking
    var objQns1 = new Array(7);
    var j = 1;
    var flag = false;
    for (i = 97; i <= 103; i++)                                                     // Used the ASCII code for a - 97 to g - 103
     {
       var oID = "chkAns1" +  String.fromCharCode(i);                               // Generates the control ID
       objQns1[j] = document.getElementById(oID);
       if(objQns1[j].checked)
        {
            flag = true;
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 1";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns1[1].focus();
        return false;
     }
    
    //Question 2 checking
    var objQns2 = new Array(8);
    j = 1;
    var flag = false;
    for (i = 97; i <= 104; i++)                                                        // Used the ASCII code for a - 97 to h - 104
     {
       var oID = "chkAns2" +  String.fromCharCode(i);                                   // Generates the control ID
       objQns2[j] = document.getElementById(oID);
       if(objQns2[j].checked)
        {
            flag = true;
            if (j == 8 || document.getElementById("chkAns2h").checked)
             {
                if(document.getElementById("txtSourceOther").value == "")
                 {
                    document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter text in the other for " + document.getElementById("chkAns2h").value;
                    document.getElementById("lblErrorMsg").visibility = "visible";
                    document.getElementById("txtSourceOther").focus();
                    return false;
                 }
             }
             break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 2";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns2[1].focus();
        return false;
     }
    
    //Question 3 checking 
    var objQns3 = new Array(8);
    j = 1;
    var flag = false;
    for (i = 97; i <= 104; i++)                                                      // Used the ASCII code for a - 97 to h - 104
     {
       var oID = "chkAns3" +  String.fromCharCode(i);                               // Generates the control ID
       objQns3[j] = document.getElementById(oID);
       if(objQns3[j].checked)
        {
            flag = true;
            if (j == 8 || document.getElementById("chkAns3h").checked)
             {
                if(document.getElementById("txtProtocolsOther").value == "")
                 {
                    document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter text in the other for " + document.getElementById("chkAns3h").value;
                    document.getElementById("lblErrorMsg").visibility = "visible";
                    document.getElementById("txtProtocolsOther").focus();
                    return false;
                 }
             }
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 3";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns3[1].focus();
        return false;
     }
     
    //Question 4 checking 
    var objQns4 = new Array(2);
    j = 1;
    var flag = false;
    for (i = 97; i <= 98; i++)                                                  // Used the ASCII code for a - 97 to b - 98
     {
       var oID = "rdoAns4" +  String.fromCharCode(i);                           // Generates the control ID
       objQns4[j] = document.getElementById(oID);
       if(objQns4[j].checked)
        {
            flag = true;
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 4";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns4[1].focus();
        return false;
     }
    
    //Question 5 checking 
    var objQns5 = new Array(2);
    j = 1;
    var flag = false;
    for (i = 97; i <= 98; i++)                                                  // Used the ASCII code for a - 97 to b - 98
     {
       var oID = "chkAns5" +  String.fromCharCode(i);                           // Generates the control ID
       objQns5[j] = document.getElementById(oID);
       if(objQns5[j].checked)
        {
            flag = true;
            if (document.getElementById("txt" + oID).value == "")
             {
                document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter text in " + objQns5[j].value;
                document.getElementById("lblErrorMsg").visibility = "visible";
                document.getElementById("txt" + oID).focus();
                return false;
             }
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 5";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns5[1].focus();
        return false;
     }  



    //Question 6 checking 
    var objQns6 = new Array(5);
    j = 1;
    var flag = false;
    for (i = 97; i <= 101; i++)                                                  // Used the ASCII code for a - 97 to e - 101
     {
       var oID = "chkAns6" +  String.fromCharCode(i);                           // Generates the control ID
       objQns6[j] = document.getElementById(oID);
       if(objQns6[j].checked)
        {
            flag = true;
            if (j == 5 || document.getElementById("chkAns6e").checked)
             {
                if(document.getElementById("txtProductOther").value == "")
                 {
                    document.getElementById("lblErrorMsg").innerHTML = "<br />You should enter text in the other for " + document.getElementById("chkAns6e").value;
                    document.getElementById("lblErrorMsg").visibility = "visible";
                    document.getElementById("txtProductOther").focus();
                    return false;
                 }
             }
            break;
        }
       else
        {
            flag = false;
        }
       j++;
     }
    if (!flag) 
     {
        flag = false;
        document.getElementById("lblErrorMsg").innerHTML = "<br />You should answer for Question 6";
        document.getElementById("lblErrorMsg").visibility = "visible";
        objQns6[1].focus();
        return false;
     }
      
 } 
 
