function checkCardEntry(oForm, iStartIdx, bIsMandatory) {

//------------------------------------------------------------------
// checkLogin
//
// Perform 3 checks, should be self-explanatory below.
//------------------------------------------------------------------
	
    if (bIsMandatory) {

        // 1st check, ensure at least one textbox is entered value
        var bHasValue = false;
        for (var i=iStartIdx; i<=(iStartIdx+2); i++)			
            if (!checkEmpty(oForm.elements[i].value))
                bHasValue = true;
        if (!bHasValue) {
            oForm.elements[iStartIdx].focus();
            alert("Please enter one card number to proceed.");
            return false;
        }
    }

    // 2nd check, ensure ONLY one card number is entered
    var iCardEntered = 0;
                
    for (var i=iStartIdx; i<=(iStartIdx+2); i=i+3) 
        if (!checkEmpty(oForm.elements[i].value) || !checkEmpty(oForm.elements[i+1].value))
            iCardEntered++;

    if (iCardEntered > 1) {
        oForm.elements[iStartIdx].focus();
        alert("You are only allowed to enter one card number.");
        return false;
    }

    // 3rd check, ensure card numbers are correctly entered
    for (var i=iStartIdx; i<=(iStartIdx+5); i=i+2) 
        if (!checkEmpty(oForm.elements[i].value) || !checkEmpty(oForm.elements[i+1].value)) {

            if (isEmpty(oForm, i, "", "Please complete the card number.") &&
                isEmpty(oForm, i+1, "", "Please complete the card number.") &&
                isEmpty(oForm, i+2, "", "Please complete the card number.") &&
                isInteger(oForm, i, "card number", "") &&
                isInteger(oForm, i+1, "card number", "") &&
                isInteger(oForm, i+2, "card number", "") &&                
                checkLength(oForm, i, 7, 7, "", "7 digits are required for first part of card number.") &&
                checkLength(oForm, i+1, 8, 8, "", "8 digits are required for second part of card number.") &&
                checkLength(oForm, i+2, 4, 4, "", "4 digits are required for third part of card number.")) {

                // no error, assign value
                // added card prefix, use i to determine which card has been entered                
                if (i == iStartIdx) 
                    var CardNumPrefix = "7027879";
                else {
                    if (i == iStartIdx+2)
                        var CardNumPrefix = "7027872";
                    else
                        var CardNumPrefix = "7002872";
                }        
                
                oForm.CardNumP1.value = oForm.elements[i].value + oForm.elements[i+1].value; // add prefix too
                oForm.CardNumP2.value = oForm.elements[i+2].value;

                return true;
            } else {
                return false;
            }       
        }
        
    return true;        
}