Local storage is used to save values between sessions. If you are just switching to another layout, you don't need Local Storage - simply store the values in global variables or in a dictionary.
The reason your language resets is probably because you change it in "LocalStorage on any item get". So if you are reading other values from LS, like "Speed", it will overwrite the language value.