For some reason I like the idea of having it in the yml file.
I have no basis for the feeling other than it just seems like the logical best place for it.
I tried hacking the rtl.rb file to
def enabled?
# site_locale_rtl? || current_user_rtl?
user.effective_locale.in?(rtl_locales)
end
# def current_user_rtl?
# SiteSetting.allow_user_locale && user.try(:locale).in?(rtl_locales)
# end
# def site_locale_rtl?
# !SiteSetting.allow_user_locale && SiteSetting.default_locale.in?(rtl_locales)
# end
I don’t know Farsi so I could very well not be seeing a glaring issue.
But the hack did not crash Discourse and I saw no error messages anywhere.
I did notice that the title was not translated for some pages, but that was true for both hacked and not-hacked.
And I did not try the set locale from accept language header setting nor test emails or many pages at all.
I did test as a site setting desktop and mobile view, and allow user preference desktop and mobile view.
site default setting desktop
site default setting mobile
user preference desktop
user preference mobile



