What is the best way to make sure all casing is uniform for all titles in our platform?

I'm working on an internal app that requires users to input very long titles that almost always includes people's names.

These titles are obtained from legal documents where many times, it would written either in title-case or all-caps - which we have no control of as these documents are only handed over to us from various sources.

The user would then have to copy over these titles into our platform and because they could be handling hundreds of documents in a day, speed is crucial. As a result, our list of titles in display are a mixture of title-case and all-caps when ideally it should all be title-case.

What would be the best way to make sure all our titles are consistent (title-case)?

  1. We could assign a simple text-transform: capitalize: CSS property, but this will be an issue for last names such as McDonald which will be auto-converted to Mcdonald

  2. In the title input field, add a button that will convert text into title-case. This way, after conversion, the user still has the liberty to convert Mcdonald into McDonald

The problem with this approach though is that if the user does not do the conversion and retains an all-caps title, then it defeats the purpose of the feature.

Any other ideas?