function ValidateChangePwdData(objoldpwd,objpwd1,objpwd2)
{
    var result = true;
    if (IsEmpty(objoldpwd))
    {
        //document.getElementById('changepwdoldpwderrormsg').innerHTML = 'Please enter a  temporary password.';
        document.getElementById('changepwdoldpwderrormsg').innerHTML = GetStr(1600);
        document.getElementById('changepwdoldpwderrormsg').style.display = "";
        result = false;
    }
    else
    {
        if (!ValidatePassword(objoldpwd))
        {
            //document.getElementById('changepwdoldpwderrormsg').innerHTML = 'the Min length of Password is 8 chars.';
            document.getElementById('changepwdoldpwderrormsg').innerHTML = GetStr(1601);
            document.getElementById('changepwdoldpwderrormsg').style.display = "";
            result = false;
        }
    }
    
    if (IsEmpty(objpwd1))
    {
        //document.getElementById('changepwdpwd1errormsg').innerHTML = 'Please enter a new password.';
        document.getElementById('changepwdpwd1errormsg').innerHTML = GetStr(1602);
        document.getElementById('changepwdpwd1errormsg').style.display = "";
        result = false;
    }
    else
    {
        if (!ValidatePassword2(objpwd1))
        {
            //document.getElementById('changepwdpwd1errormsg').innerHTML = 'at least 1 letter, 1 number, min 8 characters(no space)';
            document.getElementById('changepwdpwd1errormsg').innerHTML = GetStr(1603);
            document.getElementById('changepwdpwd1errormsg').style.display = '';
            result = false;
        }
    }
    
    if (IsEmpty(objpwd2))
    {
        //document.getElementById('changepwdpwd2errormsg').innerHTML = 'Please enter a password confirm.';
        document.getElementById('changepwdpwd2errormsg').innerHTML = GetStr(1604);
        document.getElementById('changepwdpwd2errormsg').style.display = "";
        result = false;
    }
    else
    {
        if (!ValidatePassword2(objpwd2))
        {
            //document.getElementById('changepwdpwd2errormsg').innerHTML = 'at least 1 letter, 1 number, min 8 characters(no space)';
            document.getElementById('changepwdpwd2errormsg').innerHTML = GetStr(1605);
            document.getElementById('changepwdpwd2errormsg').style.display = '';
            result = false;
        }
        else
        {
            if (objpwd1.value != objpwd2.value)
            {
                //document.getElementById('changepwdpwd2errormsg').innerHTML = 'two attempts failure with two different password';
                document.getElementById('changepwdpwd2errormsg').innerHTML = GetStr(1606);
                document.getElementById('changepwdpwd2errormsg').style.display = '';
                result = false;
            }
        }
    }
    
    return result;
}

function DoChangePwd()
{
    document.getElementById('changepwdoldpwderrormsg').innerHTML = '';
    document.getElementById('changepwdoldpwderrormsg').style.display = 'none';
    
    document.getElementById('changepwdpwd1errormsg').innerHTML = '';
    document.getElementById('changepwdpwd1errormsg').style.display = 'none';

    document.getElementById('changepwdpwd2errormsg').innerHTML = '';
    document.getElementById('changepwdpwd2errormsg').style.display = 'none';
    
    var objoldpwd = document.getElementById('changepwdoldpwd');
    var objpwd1 = document.getElementById('changepwdpwd1');
    var objpwd2 = document.getElementById('changepwdpwd2');

    if (!ValidateChangePwdData(objoldpwd,objpwd1,objpwd2))
        return;

    //document.getElementById("Loading").innerHTML = "<center>LOADING...</center>";
//    document.getElementById("Loading").innerHTML = GetStr(1000);
    SetLoading('forgotpwdsubmit');
    
     createKey('pos');
     var oldpwd = encryptedString(key, Trim(objoldpwd.value));
     var pwd1 = encryptedString(key, Trim(objpwd1.value));
     var pwd2 = encryptedString(key, Trim(objpwd2.value));

    // hook up a method that gets the response
    proxies.ProxyService.ChangePwd.func = ChangePwdCallback;
     
    // now call the server
    proxies.ProxyService.ChangePwd(oldpwd,pwd1,pwd2);
}

function ChangePwdCallback(response)
{
    //document.getElementById("Loading").innerHTML = "";
    UnSetLoading('forgotpwdsubmit');
    
    //alert(response);
    var result = response;
    
    if (result == ResponseCode.UsernameError)
    {
        //alert('Email not exists!');
        alert(GetStr(1607));
        return;
    }
    if (result == ResponseCode.TemporaryPasswordError)
    {
        //alert('TemporaryPasswordError');
        //document.getElementById('changepwdoldpwderrormsg').innerHTML = 'Wrong Temporary Password';
        document.getElementById('changepwdoldpwderrormsg').innerHTML = GetStr(1608);
        document.getElementById('changepwdoldpwderrormsg').style.display = "";        
        return;
    }
    if (result == ResponseCode.SessionError)
    {
        //alert('Session error');
        alert(GetStr(1609));
        return;
    }
    if (result == ResponseCode.UnknownError)
    {
        //alert('UnknownError');
        alert(GetStr(1002));
        return;
    }
    if (result == ResponseCode.Succeed)
    {
        //alert('Succeed');
        HideLoginRegister();
        //alert('Change password succeed, please login');
        //alert(GetStr(1610));
        return;
    }    
}