


function CheckAvailability(source) {
    var sourceClientID = (source == 'login') ? loginClientID : emailClientID;
    var val = document.getElementById(sourceClientID).value;

    if (val.trim() != '') {
        PageMethods.RegistrationServerValidate(source, val, OnCallComplete, OnCallError);
    }

}

function OnCallComplete(results) {
    var arr = results.split(";");
    var source = arr[0];
    var sourceClientID = (source == 'login') ? loginClientID : emailClientID;
    var sourceErrorClientID = (source == 'login') ? 'loginAvailabilityError' : 'emailAvailabilityError';
    var sourceImgClientID = (source == 'login') ? 'loginAvailabilityImg' : 'emailAvailabilityImg';
    
    if (arr[1] == 'fail') {
        document.getElementById(sourceClientID).value = '';
        document.getElementById(sourceClientID).focus();
        document.getElementById(sourceErrorClientID).style.display = '';
        document.getElementById(sourceErrorClientID).innerHTML = regErrorMsg[arr[2]];
        document.getElementById(sourceImgClientID).style.display = 'none';
    } else {
        document.getElementById(sourceImgClientID).style.display = '';
        document.getElementById(sourceErrorClientID).style.display = 'none';
    }
}

function OnCallError(results) {
    alert('There was an error calling the service: ' + results.get_message());
}  


