tl-set-clientlang.sh only sets LANG, however the different LC_* variables override this. So if any of those are set globally then the user's language setting doesn't take effect.