function namechange(textbox) {
    //Get the name
    name=textbox.value;

    //Split the name into parts
    nameparts=name.split(" ");
    firstname=nameparts[0];
    secondname=nameparts[1];
    if(nameparts[2])secondname=secondname+' '+nameparts[2];
    
    //Sort out first name
    firstname=caps(firstname);

    //Sort out secondname
    if(secondname) {
        secondname=caps(secondname);
        secondname=mcmac(secondname);
        secondname=' '+secondname;//Insert a space before it
    }
    else {
        secondname='';
    }

    //Set textbox to adjusted value
    textbox.value=firstname+secondname;
}

function caps(name) {
    rest =name.substring(1,name.length);
    capital=name.charAt(0);
    capital=capital.toUpperCase();
    name=capital+rest;
    return name;
}
function mcmac(name) {
    if(name.length<3)
        return name;
    if(name.substring(0,2)=="Mc") {
        rest=name.substring(3,name.length);
        cap=name.charAt(2);
        return "Mc"+cap.toUpperCase()+rest;
    }
    if(name.substring(0,3)=="Mac") {
        rest=name.substring(4,name.length);
        cap=name.charAt(3);
        return "Mac"+cap.toUpperCase()+rest;
    }
    if(name.substring(0,2)=="O'") {
        rest=name.substring(3,name.length);
        cap=name.charAt(2);
        return "O'"+cap.toUpperCase()+rest;
    }
    return name;
}
