﻿function ValidatePhone(sender, args) {
    var phone = document.getElementById("ctl00_MainContentPlaceHolder_txtPhone");
    var mobile = document.getElementById("ctl00_MainContentPlaceHolder_txtMobile");
    args.IsValid = false;
    if (phone.value != "" || mobile.value != "") {
        if (phone.value.length == 8 || phone.value.length == 10 || mobile.value.length == 10) {
            args.IsValid = true;
            return;
        }
    }


}


        function WordCount(sender, args){
        args.IsValid = false;
        var formcontent = document.getElementById("ctl00_MainContentPlaceHolder_txtWords").value
        
        
        formcontent=formcontent.split(" ")
        
        if (formcontent.length <= 25)
        {
            args.IsValid = true;
            return;
        }
        
        }


        function CharacterCount(sender, args){
        args.IsValid = false;
        var formcontent = document.getElementById("ctl00_MainContentPlaceHolder_txtWords").value
        
        if (formcontent.length <= 600)
        {
            args.IsValid = true;
            return;
        }
        
        }

function ValidateBirthDate(sender, args) {
        try {
            var testDate = document.getElementById("ctl00_MainContentPlaceHolder_txtDOB").value;
            if (!checkdateformat(testDate)) {
               args.IsValid = false;
                return;
            }
        } catch (e) {
            alert(e);
        }
    
    args.IsValid = true;
}


function ValidateState(sender, args)
{
    var state = document.getElementById("ctl00_MainContentPlaceHolder_txtState");
    if (state.value.toUpperCase() == "NSW" || state.value.toUpperCase() == "VIC" || state.value.toUpperCase() == "QLD" || state.value.toUpperCase() == "SA" || state.value.toUpperCase() == "ACT" || state.value.toUpperCase() == "NT" ||state.value.toUpperCase() == "WA" || state.value.toUpperCase() == "TAS")
    {
        args.IsValid = true;
        return;
    }
    args.IsValid = false;
}

function checkdateformat(userinput) {
    var dateformat = /^(?=\d)(?:(?!(?:(?:0?[5-9]|1[0-4])(?:\.|-|\/)10(?:\.|-|\/)(?:1582))|(?:(?:0?[3-9]|1[0-3])(?:\.|-|\/)0?9(?:\.|-|\/)(?:1752)))(31(?!(?:\.|-|\/)(?:0?[2469]|11))|30(?!(?:\.|-|\/)0?2)|(?:29(?:(?!(?:\.|-|\/)0?2(?:\.|-|\/))|(?=\D0?2\D(?:(?!000[04]|(?:(?:1[^0-6]|[2468][^048]|[3579][^26])00))(?:(?:(?:\d\d)(?:[02468][048]|[13579][26])(?!\x20BC))|(?:00(?:42|3[0369]|2[147]|1[258]|09)\x20BC))))))|2[0-8]|1\d|0?[1-9])([-.\/])(1[012]|(?:0?[1-9]))\2((?=(?:00(?:4[0-5]|[0-3]?\d)\x20BC)|(?:\d{4}(?:$|(?=\x20\d)\x20)))\d{4}(?:\x20BC)?)(?:$|(?=\x20\d)\x20))?((?:(?:0?[1-9]|1[012])(?::[0-5]\d){0,2}(?:\x20[aApP][mM]))|(?:[01]\d|2[0-3])(?::[0-5]\d){1,2})?$/
    return dateformat.test(userinput) //returns true or false depending on userinput
}

function ValidateSAAge() {
    var ddYear = document.getElementById("ctl00_MainContentPlaceHolder_ddlYear");
    var ddMonth = document.getElementById("ctl00_MainContentPlaceHolder_ddlMonth");
    var ddDay = document.getElementById("ctl00_MainContentPlaceHolder_ddlAgeDay");
    var currentTime = new Date();
    var currentDay = currentTime.getDate();
    var currentMonth = currentTime.getMonth() + 1;
    var currentYear = currentTime.getFullYear();

    if (ddYear.value == "" || ddMonth.value == "" || ddDay.value == "") {
        return true;
    }
    else {
        if ((currentYear - ddYear.value) >= 22) {
            return true;
        }
        else {
            if ((currentYear - ddYear.value) == 21) {
                if (currentMonth > ddMonth.value) {
                   return true;
                }
                else {
                    if (currentMonth = ddMonth.value) {
                        if (currentDay < ddDay.value) {
                            return false;
                        }
                        else {
                            return true;
                        }
                    }
                    else {
                        return false;
                    }
                }
            }
            else {
                return false;
            }
        }

    }
}





function ValidateAUPostcode(sender, args)
{
    if(document.getElementById("ctl00_MainContentPlaceHolder_ddlState").value == "0" || document.getElementById("ctl00_MainContentPlaceHolder_txtPostcode").value == "")
    {
        args.IsValid = true;
        return;
    }
    args.IsValid = false;
    var State = document.getElementById("ctl00_MainContentPlaceHolder_ddlState").value;
    var postcodeIntValue = document.getElementById("ctl00_MainContentPlaceHolder_txtPostcode").value;
     
                    if ((postcodeIntValue >= 1000 && postcodeIntValue <= 1999) ||
                    (postcodeIntValue >= 2000 && postcodeIntValue <= 2599) ||
                    (postcodeIntValue >= 2620 && postcodeIntValue <= 2898) ||
                    (postcodeIntValue >= 2921 && postcodeIntValue <= 2999)) 
                    {
                    
                            if (State == "NSW")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                    
                    } 
                else if ((postcodeIntValue >= 0200 && postcodeIntValue <= 0299) ||
                           (postcodeIntValue >= 2600 && postcodeIntValue <= 2619) ||
                           (postcodeIntValue >= 2900 && postcodeIntValue <= 2920)) 
                    {
                    
                            if (State == "ACT")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                    } 
                else if ((postcodeIntValue >= 3000 && postcodeIntValue <= 3999) ||
                           (postcodeIntValue >= 8000 && postcodeIntValue <= 8999)) 
                    {
                            if (State == "VIC")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                    }
                else if ((postcodeIntValue >= 4000 && postcodeIntValue <= 4999) ||
                           (postcodeIntValue >= 9000 && postcodeIntValue <= 9999)) 
                {
                    if (State == "QLD")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                }
                
                else if ((postcodeIntValue >= 5000 && postcodeIntValue <= 5799) ||
                           (postcodeIntValue >= 5800 && postcodeIntValue <= 5999)) 
                {
                     if (State == "SA")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                } 
                else if ((postcodeIntValue >= 6000 && postcodeIntValue <= 6797) ||
                           (postcodeIntValue >= 6800 && postcodeIntValue <= 6999)) 
                {
                     if (State == "WA")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                } 
                else if ((postcodeIntValue >= 7000 && postcodeIntValue <= 7799) ||
                           (postcodeIntValue >= 7800 && postcodeIntValue <= 7999)) 
                {
                    if (State == "TAS")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                } 
                else if ((postcodeIntValue >= 0800 && postcodeIntValue <= 0899) ||
                           (postcodeIntValue >= 0900 && postcodeIntValue <= 0999)) 
                {
                    if (State == "NT")
                            {
                                args.IsValid = true;
                                return;
                            }
                            else
                            {
                              args.IsValid = false;
                              return;
                            }
                }
                   
    
    
}






function ValidateOptin(sender, args) {
    args.IsValid = false;
    if (document.getElementById("ctl00_MainContentPlaceHolder_chkSMSReminder").checked == 1 || document.getElementById("ctl00_MainContentPlaceHolder_chkOptin").checked == 1) {
        args.IsValid = true;
    }
}




function ValidateTerms(sender, args) {
    args.IsValid = false;
    if (document.getElementById("ctl00_MainContentPlaceHolder_chkTerms").checked == 1) {
        args.IsValid = true;
    }
}


function ValidateReceipt(sender, args) {
    args.IsValid = false;
    if (document.getElementById("ctl00_MainContentPlaceHolder_chkReceipt").checked == 1) {
        args.IsValid = true;
    }
}



var firefox = document.getElementById && !document.all;

function getControl(ID) {
    return document.getElementById(ID)
}

function bodyLoad() {
    var xx = document.getElementById("form1");
    xx.title.focus();
}



function numericOnly(e) {

    var keycode = 0;

    if (!firefox) {
        keycode = window.event.keyCode;
    } else {
        keycode = e.charCode;
    }
    if (firefox && keycode == 0) {
        return true;
    }

    if (
			    keycode == 8 || //backspace
			    keycode == 127  //delete
			    )		// \
    {
        return true;
    }

    if (keycode < 48 || keycode > 57) {
        if (!firefox) {
            window.event.keyCode = 8;
        } else {
            return false;
        }
    }
}

function dayPhoneOnly(e, contact) {
    var blnIncorrectStart = false;
    var keycode = 0;

    if (!firefox) {
        keycode = window.event.keyCode;
    } else {
        keycode = e.charCode;
    }
    if (firefox && keycode == 0) {
        return true;
    }

    if (
			    keycode == 8 || //backspace
			    keycode == 127  //delete
			    )		// \
    {
        return true;
    }

    if (contact.length == 0) {
        if (keycode != 48) {
            blnIncorrectStart = true;
        }
    }

    if (blnIncorrectStart) {
        if (!firefox) {
            window.event.keyCode = 8;
        } else {
            return false;
        }
    }

    numericOnly(e);
}

function mobilePhoneOnly(e, mobile) {
    var blnIncorrectStart = false;

    var keycode = 0;

    if (!firefox) {
        keycode = window.event.keyCode;
    } else {
        keycode = e.charCode;
    }
    if (firefox && keycode == 0) {
        return true;
    }

    if (
			    keycode == 8 || //backspace
			    keycode == 127  //delete
			    )		// \
    {
        return true;
    }

    if (mobile.length == 0) {
        if (keycode != 48) {
            blnIncorrectStart = true;
        }
    }
    if (mobile.length == 1) {
        if (keycode != 52) {
            blnIncorrectStart = true;
        }
    }
    if (blnIncorrectStart) {
        if (!firefox) {
            window.event.keyCode = 8;
        } else {
            return false;
        }
    }

    numericOnly(e);
}

function alphaOnly(e) {
    var keycode = 0;

    if (!firefox) {
        keycode = window.event.keyCode;
    } else {
        keycode = e.charCode;
    }

    if (firefox && keycode == 0) {
        return true;
    }

    if (
			    keycode == 8 || //backspace
			    keycode == 127 || //delete
			    keycode == 32 || // space
				keycode == 39 || // '
				keycode == 45 || // -
				keycode == 92 || // /
				keycode == 47)		// \
    {
        return true;
    }

    if ((keycode < 65 || keycode > 90) && (keycode < 97 || keycode > 122)) {
        if (!firefox) {
            window.event.keyCode = 8;
        } else {
            return false;
        }
        //window.event.cancelBubble = true;
    }
}

function alphaNumericOnly(e) {
    var keycode = 0;

    if (!firefox) {
        keycode = window.event.keyCode;
    } else {
        keycode = e.charCode;
    }

    if (firefox && keycode == 0) {
        return true;
    }

    if (keycode == 32) { //space bar
        return true;
    }

    if (
			    keycode == 8 || //backspace
			    keycode == 127  //delete
			    )		// \
    {
        return true;
    }

    if (keycode == 45 || // -
				keycode == 44 || // ,
				keycode == 47 || // \
				keycode == 92 || // /
				keycode == 39)		// '
    {
        return true;
    }

    if ((keycode < 65 || keycode > 90) && (keycode < 97 || keycode > 122) && (keycode < 48 || keycode > 57)) {
        if (!firefox) {
            window.event.keyCode = 8;
        } else {
            return false;
        }
        //window.event.cancelBubble = true;
    }
}



function currencyOnly(keycode) {

    if (keycode == 46) { // period
        return true;
    }

    if (firefox && keycode == 0) {
        return true;
    }

    if (
			    keycode == 8 || //backspace
			    keycode == 127  //delete
			    )		// \
    {
        return true;
    }

    if (keycode < 48 || keycode > 57) {
        return false;
    }
    return true;
}

function checkPurchaseAmount(e) {

    var keycode = 0;

    if (!firefox) {
        keycode = window.event.keyCode;
    } else {
        keycode = e.charCode;
    }

    if (!currencyOnly(keycode)) {
        if (!firefox) {
            window.event.keyCode = 8;
            return false;
        } else {
            return false;
        }
    }



    var xx = document.getElementById("form1");
    var val = xx.purchaseamount.value

    var len = val.length;

    if (len == 4 && val.indexOf(".") < 0 && keycode != 46) {
        if (!firefox) {
            window.event.keyCode = 8;
            return false;
        } else {
            return false;
        }
    }

    if (val.indexOf(".") > -1 && val.indexOf(".") == val.length - 3) {
        if (!firefox) {
            window.event.keyCode = 8;
            return false;
        } else {
            return false;
        }
    }

}

function emailCharsOnly(e) {
    var keycode = 0;

    if (!firefox) {
        keycode = window.event.keyCode;
    } else {
        keycode = e.charCode;
    }

    if (firefox && keycode == 0) {
        return true;
    }

    if (
			    keycode == 8 || //backspace
			    keycode == 127  //delete
			    )		// \
    {
        return true;
    }

    //alert(keycode);
    //period               @             _                  -
    if (keycode == 46 || keycode == 45 || keycode == 64 || keycode == 95) { //.@-_-
        return true;
    }

    if ((keycode < 48 || keycode > 57) && (keycode < 65 || keycode > 90) && (keycode < 97 || keycode > 122)) {
        if (!firefox) {
            window.event.keyCode = 8;
        } else {
            return false;
        }
        //window.event.cancelBubble = true;
    }
}

function checkLength(e, len) {
    var obj
    if (!firefox) {
        obj = window.event.srcElement;
    } else {
        obj = e.target;
    }
    if (obj.value == "") { return; }

    if (obj.value.length < len) {
        alert("Please make sure this field is " + len + " numbers long");
        obj.focus();
    }
}

function clearPage() {
    var c = document.getElementsByTagName("body")[0].getElementsByTagName("*");
    var outstr = "";
    for (var x = 0; x < c.length; x++) {
        switch (c[x].tagName) {
            case "INPUT":
                switch (c[x].type) {
                    case "text":
                    case "password":
                        c[x].value = "";
                        break;
                    case "checkbox":
                        c[x].checked = false;
                        break;
                }
                break;
            case "SELECT":
                c[x].selectedIndex = 0;
                break;

        }

    }
}

function checkEmail(sender, args) 
{
    args.IsValid = false;
    var email =  document.getElementById("ctl00_MainContentPlaceHolder_txtEmail");
    var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
    if (filter.test(email.value)) 
    {
        args.IsValid = true;
        return;
    }
}

function ConfirmAge(sender, args) 
{
    args.IsValid = true;
    
    var Age = document.getElementById("ctl00_MainContentPlaceHolder_ddlAge").value;
    if(document.getElementById("ctl00_MainContentPlaceHolder_chkConfirm").checked == 0
       && (Age == "0-5" || Age == "6-8" || Age == "9-12" || Age == "13-17"))
    {
        args.IsValid = false;
    }
    
}



