Check the version number in your {!REQUIRESCRIPT("/soap/ajax/(here!)/connection.js")}
.
Probably it's something ancient like "13" they still have in the docs.
There's also non-zero chance that this function tries to be smart and doesn't include the connection.js if one of previous buttons has used it. Check the custom JS buttons that load before yours on your client's page layout and bump them all up?