function isRadioChecked(field, errMsg, errors){

	var radioChecked = false;

    var cbObj = field;
    if ( !cbObj ) { return; }
    var num = cbObj.length;
    
    
    
	if (cbObj && !num ){
		if (cbObj.checked == true) {
            radioChecked = true;
        }
	} else if (num) {
		for (var i=0; i<num; i++)  { 
			if (field[i].checked)  {
				radioChecked = true;
			} 
		} 
	}

	if(!radioChecked){
            if(errors !=null){
                errors.push(errMsg);
            } else {
                alert(errMsg);
            }	
	}

	return radioChecked;
}

		function get_radio_value(rdobj){
		
		
		    if ( !rdobj ) { alert("No radio"); }
		    var num = rdobj.length;
		    
		    
		    
			if (rdobj && !num ){
				if (rdobj.checked == true) {
			      	var rad_val = rdobj.value;
			      	return rad_val;           
		        }
			} else if (num) {
					for (var i=0; i < rdobj.length; i++){
					   if (rdobj[i].checked){
					      var rad_val = rdobj[i].value;
					      return rad_val;
				      	}
				   	}
			}
		}

function checkBoxSelected(cbObj) {
    var retVal = false;
    if ( !cbObj ) { return; }
    var num = cbObj.length;
    if ( cbObj && !num )
    {
        if (cbObj.checked == true) {
            retVal = true;
        }
    }
    else if ( num )
    {
        for ( i=0; i < num; i++ )
        {
            if (cbObj[i].checked == true) {
                retVal = true;
            }
              
        }
    }
    return retVal;
}


function isValidFirstname( field, errors ) {
    if (!isEmpty(field.value, "Ad gerekli", errors)){
        if (isValidString(field.value, 2, 32, "Gecersiz Ad", errors)){
            containsInvalidChars("0123456789!@#$%^&*-=+~`{}()][;:.,?|\"\'\\", field.value, "Gecersiz Ad", errors);
        }
    }
}

function isValidLastname( field, errors ) {
    if (!isEmpty(field.value, "Soyad gerekli", errors)){
        if (isValidString(field.value, 2, 32, "Gecersiz Soyad", errors)){
            containsInvalidChars("0123456789!@#$%^&*-=+~`{}()][;:.,?|\"\'\\", field.value, "Gecersiz Soyad", errors);
        }
    }
}

function isValidCard( field, errors ) {
    if (!isEmpty(field.value, "Kredi Karti Numarasi gerekli", errors)){
        if (isValidString(field.value, 15, 16, "Gecersiz Kredi Karti Numarasi", errors)){
            isDigit(field.value,"Gecersiz Kredi Karti Numarasi", errors );
        }
    }
}

function isValidExpiryaa( field, errors ) {
    if (!isEmpty(field.value, "Son Kullanma Tarihi (AA) gerekli", errors)){
        if (isValidString(field.value, 2, 2, "Gecersiz Son Kullanma Tarihi", errors)){
            isDigit(field.value,"Gecersiz Son Kullanma Tarihi", errors );
        }
    }
}

function isValidExpiryyy( field, errors ) {
    if (!isEmpty(field.value, "Son Kullanma Tarihi (YY) gerekli", errors)){
        if (isValidString(field.value, 2, 2, "Gecersiz Son Kullanma Tarihi", errors)){
            isDigit(field.value,"Gecersiz Son Kullanma Tarihi", errors );
        }
    }
}

function isValidCVV( field, errors ) {
    if (!isEmpty(field.value, "CVV numarasi gerekli", errors)){
        if (isValidString(field.value, 3, 3, "Gecersiz CVV numarasi", errors)){
            isDigit(field.value,"Gecersiz CVV numarasi", errors );
        }
    }
}

function containsInvalidChars(invalidChars, field, errMsg, errors) {
    for(i=0; i < field.length; i++) {
        if(invalidChars.indexOf(field.charAt(i)) != -1) {
            if(errors !=null){
                errors.push(errMsg);
                return true;
            } else {
                alert(errMsg);
                return true;
            }	
        }
    }
	return false;
}

function isValidString(field, minLength, maxLength, errMsg, errors){
	var trimmedField = trimString(field);
    if (!((trimmedField.length >= minLength) && (trimmedField.length <= maxLength))){
            if(errors !=null){
                errors.push(errMsg);
                return false;
            } else {
                alert(errMsg);
                return false;
            }
    }
    
    return true;
}


function displayErrors(errors){

    var message;
    message = "Asagidakileri tamamlayiniz:\n\n";

    //Display all errors ,if there are any, in an alert box and don't submit the form
    if ( errors.length != 0 ){
        for (i=0; i < errors.length; i++){
            message = message + "- " + errors[i] + "\n";
        }

        alert(message);
        return false;
        
    } else {
     	return true;
    }   //Submit the form if there aren't any errors.
}

function isDigit(target, errMsg, errors){

    var digits = "0123456789";

    for (i = 0; i < target.length; i++){

        var thisDigit = target.charAt(i);

        if (digits.indexOf(thisDigit) == -1){
            if(errors !=null){
                errors.push(errMsg);
                return false;
            } else {
                alert(errMsg);
                return false;
            }
        }
    }

    return true;
}

function isEmpty(field, errMsg, errors){

	var trimmedField = trimString(field);
    if ((trimmedField.length == 0) || (trimmedField == null)){
            if(errors !=null){
                errors.push(errMsg);
                return true;
            } else {
                alert(errMsg);
                return true;
            }
    }
    
    return false;


}

function isEqual(field1, field2, errMsg, errors){
    if (field1 != field2){
        if(errors !=null){
            errors.push(errMsg);
            return false;
        } else {
            alert(errMsg);
            return false;
        }
    } else {
        return true;
    }
}

function trimString(value){

    //trim whitespaces at the end of the string
    var ch = value.substring(value.length-1, value.length);
    while (ch == " "){
        value = value.substring(0, value.length-1);
        ch = value.substring(value.length-1, value.length);
    }

    //trim whitespaces at the beginning of the string
    ch = value.substring(0,1);
    while (ch == " "){
        value = value.substring(1, value.length);
        ch = value.substring(0,1);
    }
    
    return value;
}