<!-- //
function IsValidChars(strText)
    {
    if(strText == null) return true;
    
    var nIndex;
    for(nIndex = 0; nIndex < gc_strExcludeChars.length; nIndex++)
        {
        if(strText.indexOf(gc_strExcludeChars[nIndex]) != -1)
            return false;
        }
        
    return true;
    }

function IsValidPassword(strPassword)
    {
    var nLength;
    nLength = strPassword.length;
    if(strPassword == "" && nLength < gc_nMinLengthPassword)
        return false;
    else if(nLength < gc_nMinLengthPassword || nLength > gc_nMaxLengthPassword)
        return false;
    else if(!IsValidChars(strPassword))
        return false;
        
    return true;
    }

function OnSubmitProfile()
    {
    var txtUsername = document.getElementById("txtUsername");
    var pasNewPassword = document.getElementById("pasNewPassword");
    var hidSalt = document.getElementById("hidSalt");
    var hidJSCode = document.getElementById("hidJSCode");
    var txtNewSecretAnswer = document.getElementById("txtNewSecretAnswer");
    var strUsername = "";
    var strPassword = "";
    var strSecretAnswer = "";
    var strSalt = "";
    
    if(txtUsername && hidSalt)
        {
        strUsername = txtUsername.value;
        strUsername = strUsername.toLowerCase();
        
        strSalt = hidSalt.value;
        strSalt = strSalt.toLowerCase();
        strSalt = hex_sha256(strUsername + strSalt);
        
        if(pasNewPassword)
            {
            strPassword = pasNewPassword.value;
            strPassword = strPassword.toLowerCase();

            if(IsValidPassword(strPassword))
                {
                strPassword = hex_sha256(strPassword + strSalt);
                hidJSCode.value = "true";
                }
                
            pasNewPassword.value = strPassword;
            }
            
        if(txtNewSecretAnswer)
            {
            strSecretAnswer = txtNewSecretAnswer.value;
            strSecretAnswer = strSecretAnswer.toLowerCase();
            
            if(IsValidChars(strSecretAnswer) && strSecretAnswer.length > 0)
                {
                strSecretAnswer = hex_sha256(strSecretAnswer + strSalt);
                hidJSCode.value = "true";
                }
                
            txtNewSecretAnswer.value = strSecretAnswer;
            }
            
        hidSalt.value = strSalt;
        }
    
    return true;
    }
    
function OnFocusInput(strField)
    {
    document.getElementById(strField).value = "";
    }
    
function OnBlurInput(strField, strValue)
    {
    var objCtrl = document.getElementById(strField);
    if(objCtrl.value == "")
        {
        objCtrl.value = strValue;
        }
    }
    
function OnChangeNetwork(selNetwork)
    {
    var nNetworkID = selNetwork.options[selNetwork.options.selectedIndex].value;
    
    var hidNetwork = parent.document.getElementById("hidNetwork");
    hidNetwork.value = nNetworkID;
    
    var ifrOrganisation = document.getElementById("ifrOrganisation");
    ifrOrganisation.src = "organisations_get.asp?NID=" + nNetworkID;
    
    var hidOrganisation = parent.document.getElementById("hidOrganisation");
    hidOrganisation.value = 0;
    
    var ifrLocation = document.getElementById("ifrLocation");
    ifrLocation.src = "locations_get.asp";
    
    var hidLocation = parent.document.getElementById("hidLocation");
    hidLocation.value = 0;
    }
    
function OnChangeOrganisation(selOrganisation)
    {
    var nOrganisationID = selOrganisation.options[selOrganisation.options.selectedIndex].value;
    
    var hidOrganisation = parent.document.getElementById("hidOrganisation");
    hidOrganisation.value = nOrganisationID;
    
    var ifrLocation = document.getElementById("ifrLocation");
    ifrLocation.src = "locations_get.asp?OID=" + nOrganisationID;
    
    var hidLocation = parent.document.getElementById("hidLocation");
    hidLocation.value = 0;
    }
    
function OnChangeLocation(selLocation)
    {
    var nLocationID = selLocation.options[selLocation.options.selectedIndex].value;
    
    var hidLocation = parent.document.getElementById("hidLocation");
    hidLocation.value = nLocationID;
    }
    
function OnChangeDOBMonth()
    {
    var selDOBYear = document.getElementById("selDOBYear");
    var nDOBYear = parseInt(selDOBYear.options[selDOBYear.options.selectedIndex].value);
    var selDOBMonth = document.getElementById("selDOBMonth");
    var nDOBMonth = parseInt(selDOBMonth.options[selDOBMonth.options.selectedIndex].value);
    var selDOBDate = document.getElementById("selDOBDate");
    var nDOBDate = parseInt(selDOBDate.options[selDOBDate.options.selectedIndex].value);
    selDOBDate.options.length = 0;
    selDOBDate.size = 0;
    
    if(nDOBYear == -1)
        {
        selDOBYear.options[1].selected = true;    
        selDOBYear.options.selectedIndex = 1;
        nDOBYear = parseInt(selDOBYear.options[selDOBYear.options.selectedIndex].value);
        }
    
    var nSelectedIndex;
    nSelectedIndex = 0;
    selDOBDate.options[selDOBDate.options.length] = new Option("Date", -1, false, false);
    
    if(nDOBMonth != -1)
        {
        var nIndex, nDaysInMonth, bDateFound;
        nDaysInMonth = GetDaysInMonth(nDOBMonth, nDOBYear);
        nSelectedIndex = 1;
        bDateFound = false;
        for(nIndex = 1; nIndex <= nDaysInMonth; nIndex++)
            {
            selDOBDate.options[selDOBDate.options.length] = new Option(nIndex, nIndex, false, false);
            if(nIndex == nDOBDate)
                {
                nSelectedIndex = nIndex;
                bDateFound = true;
                }
            }
        
        if(nDOBDate != -1 && bDateFound == false) nSelectedIndex = nDaysInMonth;
        }
    else
        {
        selDOBYear.options[0].selected = true;    
        selDOBYear.options.selectedIndex = 0;
        }
    
    selDOBDate.options[nSelectedIndex].selected = true;    
    selDOBDate.options.selectedIndex = nSelectedIndex;
    selDOBDate.size = 1;
    }
    
function OnChangeDOBDate()
    {
    var selDOBDate = document.getElementById("selDOBDate");
    var nDOBDate = parseInt(selDOBDate.options[selDOBDate.options.selectedIndex].value);
    if(nDOBDate == -1)
        {
        var selDOBYear = document.getElementById("selDOBYear");    
        selDOBYear.options[0].selected = true;    
        selDOBYear.options.selectedIndex = 0;
        var selDOBMonth = document.getElementById("selDOBMonth");
        selDOBMonth.options[0].selected = true;    
        selDOBMonth.options.selectedIndex = 0;
        OnChangeDOBMonth();
        }
    }
    
function OnChangeDOBYear()
    {
    var selDOBYear = document.getElementById("selDOBYear");
    var nDOBYear = parseInt(selDOBYear.options[selDOBYear.options.selectedIndex].value);
    if(nDOBYear == -1)
        {
        var selDOBDate = document.getElementById("selDOBDate");
        selDOBDate.options[0].selected = true;    
        selDOBDate.options.selectedIndex = 0;
        var selDOBMonth = document.getElementById("selDOBMonth");
        selDOBMonth.options[0].selected = true;    
        selDOBMonth.options.selectedIndex = 0;
        }
    OnChangeDOBMonth();
    }
// -->