Possible solutions are, but not limited to:
- use the HTTP header settings as given by the browser (which would mean that the language is actually switched in the browser chrome)
- use the babel boxes from the user pages (as Wikidata, several disadvantages, don't exist for logged out users, hard to discover, expensive)
- extend user preferences and use the values from there
- use different URLs for different languages (e.g. wikifunctions.org/en vs wikifunctions.org/hr or en.wikifunction.org vs hr.wikifunctions.org)
These have different advantages and disadvantages and are also not mutually exclusive. We should decide on which one to use and implement them.