Internationalization and Localization (UXPROD-779)

[UXPROD-510] User-level locale and time zone setting Created: 16/Apr/18  Updated: 26/Mar/21

Status: Open
Project: UX Product
Components: None
Affects versions: None
Fix versions: None
Parent: Internationalization and Localization

Type: New Feature Priority: P3
Reporter: Cate Boerema (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: i18n, post-v1, round_iv
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original estimate: Not Specified

Attachments: PNG File User-level language switcher - tenant admin selected langauges and the default language for all tenant users.png     PNG File User-level language switcher - user selected langauges and the preferred language.png     PNG File User-level language switcher button.png     PNG File User-level locale switcher site - ara.png     PNG File User-level locale switcher site - eng.png    
Issue links:
Relates
relates to UXPROD-883 Localization and language should be s... Open
relates to FOLIO-2802 Recruit translators for library-defin... Open
relates to UID-15 Create a TEMPORARY way to change a se... Closed
relates to UX-400 UX Review of KWare's User-Level Local... In Progress
relates to STCOR-527 on login, read locale from a user-spe... Closed
Epic Link: Internationalization and Localization
Front End Estimate: Medium < 5 days
Front End Estimator: Jakub Skoczen
Development Team: None
Rank: Chalmers (Impl Aut 2019): R5
Rank: Chicago (MVP Sum 2020): R5
Rank: Cornell (Full Sum 2021): R5
Rank: Duke (Full Sum 2021): R1
Rank: 5Colleges (Full Jul 2021): R5
Rank: FLO (MVP Sum 2020): R5
Rank: GBV (MVP Sum 2020): R4
Rank: hbz (TBD): R1
Rank: Hungary (MVP End 2020): R1
Rank: Lehigh (MVP Summer 2020): R5
Rank: Leipzig (Full TBD): R1
Rank: Leipzig (ERM Aut 2019): R2
Rank: MO State (MVP June 2020): R3
Rank: TAMU (MVP Jan 2021): R5
Rank: U of AL (MVP Oct 2020): R4

 Description   

User-level locale (language/country) and timezone settings. FOLIO recognizes hierarchy: user; tenant; system. We will not attempt to infer locale from browser settings.



 Comments   
Comment by Massoud Alshareef [ 13/Apr/20 ]

It gives me pleasure to announce the availability of a User-Level Locale Setter by KnowledgeWare Technologies (kware) team.

I would like to invite you to kindly give the User-Level language switcher for FOLIO a try. Any thought on enhancing the work or on spotting potential issue(s) with the implementation is more than welcome and indeed gratefully appreciated.

Here is Kware FOLIO test server: http://folio.maktabat-guides.com/
kware / kware

You can find the language switcher button in the menu dropped down when you press on the down arrow to the right of service point (Circ Desk 1) on the far right of the Nav bar.

Settings controls of the language switcher are distributed between the Tenant administrator and the library staff user.

When you press on "My Profile" you notice a new tab in the user profile, titled "User Language info", been added. Here a user can pick and choose the languages he/she would like to switch between, and he/she can also select the preferred language to rest back to (after a refresh action or after time out) and default to after login.

The tenant administrator can control the languages that users in the tenant can switch between, and can set the default language for all users when they first login until they setup their user profile "language settings" differently.

Tenant admin settings are provided in Settings >> Tenant >> Languages

So, tenant admins can decide on the language(s) for their library users to switch between and default to after login, but then users have the space to pick and chose from the available languages provided by the tenant admin, and thus a user can override the default settings set by the admin to suit his/her preferences.

Right now, we only have the UX for Tenant language settings and user's profile User Lang components in English and Arabic. We look forward to have the other translators to add their contributions based on the translation keys we will provide Peter Murray with.

In case a user selected two languages only to switch in between, we will eliminate the popup dialog for the language list, and instead the language switcher button is labeled "Switch to English" in English text when the native language is active, and "Switch to the native language" in the native language text when English is the active language.

In case a user selected one language only, the language switcher button will disappear and that language will become the preferred language by default.

NB: based on my experience with the UX of multi-lingual solutions, the most common number of languages to switch between is two: English and the native language of the library. This is the case here in the Middle East in general and the AGC (Arabian Gulf Countries) region in particular. Also, you hardly find an online system in a single language UI anymore.

Known Issue: right now if you switch to another language while in the middle of an editing session, you will lose the changes if you do not save them before switching. We have two options to handle such scenario. 1) prompt the user to save or ignore the changes (if any) before switching to another language, or 2) buffer the session changes first, switch to the other language and then restore the changes.

Stay safe and healthy.

Thanks,
Massoud.

Comment by Massoud Alshareef [ 11/Sep/20 ]

Cate Boerema Zak Burke John Coburn attia.alshareef Peter Murray Ann-Marie Breaux Magda Zacharska Mark Allcock Richard Burkitt Ian Ibbotson (Use this one) Mike Gorrell Sebastian Hammer Hkaplanian

FOLIO User-level locales switcher

The following is a functional overview of the features developed by KnowledgeWare to enhance FOLIO multilingual capabilities via the User-level locales switcher component.

Native locale activation at Login

(It is determined that FOLIO should sustain the fact that it's a natural language agnostic, a truly native platform, and thus FOLIO UX should appear solely in the user preferred locale UI all the way starting from login)

  • Locale sequence pickup at login has been enhanced to be in the following order: 1-User preferred locale; 2-Tenant default locale; 3-English Locale
  • Enabling logging directly into user preferred locale UX instead of the current state where users have to start with English locale first and then switched to current tenant locale
  • Enabling Loading user preferred locale library-defined policies translation at login

User-level locales switcher enabled

  • Enabling the user-level locales switcher to all FOLIO users via a drop-down menu in a newly added navbar (see below)
  • Enabling locales switching anytime and from anywhere within any FOLIO app, without having to exit from your current active app.

Adding a new navbar for library identity

  • A new navbar is added on top of FOLIO apps navbar, containing the user-level locales switcher, library logo, user profile dropdown menu headed by user name and photo, settings icon for quick admin access, and the home page button
  • Added a new button (Myprofile) in the user profile drop-down menu, to take the user to his/her profile in the Users app.

User session preservation after locale switching

  • Preserving user activities like search results, keywords, filters, and forms editing changes after locale switching without having to save them. This is done by limiting screen rendering to the apps navbar only, avoiding unnecessary screen rendering for the work area.

User’s profile language information settings

(A newly added section to the Users app)

  • The user is enabled now to select a set of locales to switch in between from among the available locales allocated for the tenant by the tenant admin.
  • The user can now select his/her preferred locale, between those selected locales, to be the locale of choice by default after login and after screen refresh
  • The Arabic user can now select his/her preferred numbering shapes (Arabic, Hinu) for date data entry and view (for now, and will be expanded in the future to cover all numbers displayed).

Tenant-level locales settings

  • Tenant admins can now select a set of locales to be available for tenant users to switch in between.
  • Tenant admins can now set the default locale for a tenant in case a user of that tenant has not yet selected his/her preferred locale.
  • Tenant admins can now select the default date format of choice for each locale made available for a tenant user to switch in between.
  • The advantage of being able to select the date format of choice for each locale removes the previous restriction of having to use the hard-coded ISO date format (yyyy-mm-dd), as enforced in the Users app, or to use the default date format set by (moment.js) or (React- intl) libraries, including date strings viewing and editing.

Arabic date/time format enhancements

  • Arabic Users can now select their preferred numbers shape (Arabic or Hindu) to be used while viewing or editing dates.
  • While in right-to-left, date format in this form (yyyy/mm/dd) is now enabled, as in WYSIWYG!
  • While in right-to-left, the Checkin app now displays time in the time dialog in the correct order "hh : mm", Also, Hindu numbers is now enabled in the time picker dialog during time display and editing.

Notice the user name can now be translated in multiple languages! The translation technology used for the library-defined policies translation (the next FOLIO multilingual feature enhancement component to cover) has been applied to the user name block in the Users app to enable users to translate their names in the locale language of their choice. The corresponding translated name will appear in the locale language when the user switches to it.

Being able to store users names in their native language along side with another language,
that is more common used in business and education, particularly in metropolitan cultures where the English or French language is used along side the native language (i.e. Arabic and English in the Arabian Gulf countries, and Arabic and French in the Arabian North Africa countries), is very useful and indeed it pushes toward true data integrity and clear identification of people records. For example, I have found that my name is written in several forms in English (i.e. Massoud, Masod, Masood, Mosad, etc,) depending on which country you live in, where there is no way for a native Arabian to write my name in any other form but one: مسعود
I am sure there are other people in the planet who are facing the same issue when writing their names in English or French script along side their native language script.

Comment by Zak Burke [ 16/Sep/20 ]

Being able to store users names in their native language along side with another language

Nah, we never have that problem on this project! Oleksii, Oleksiy, and Aliaskei all spell their names the same way in English.

Comment by Massoud Alshareef [ 17/Sep/20 ]

Thank you Zak Burke for sharing your thoughts.
Do you mean these people (Oleksii, Oleksiy, and Aliaskei) write their name the same in their native language but spell (differently) in English ? If the answer is yes, then you do agree with my point. If not, please provide more clarification on your view.

It is important to realize that the issue here is faced when people see their names translated by admin from the native script to English, based on how admin master English vocal letters when they write people names based on how it sounds to them. Take a look at this please: https://en.wikipedia.org/wiki/Masoud As the page says, the name (originally Arabic and it is written in one and only one form: مسعود ) is popular in the Arab world, Iran, Turkey, Tajikistan, Afghanistan, Uzbekistan, Pakistan and also found to be used in Palestine, Russia, India, Bangladesh, Malaysia and China. People in all of these countries write it (exactly) the same (مسعود) in their native script: Arabic, Farsi, and Urdu!

I have witnessed cases where students in colleges or patients in hospitals complain that their name is written funny in English by HR, or sounds funny when announced by the operators or nurses based on the system record (written in English) or looks strange when written by the system on drugs prescriptions. This is because either the system supports a single language only or it is the agent policy to use English for all. I am talking about operators and nurses who are of an Arabic origin! I think names wouldn't sound that funny or written strangely on paper if the system allowed writing names in their native script also beside English, the least for the sake of clarity and data integrity.

I believe there are people from non-Latin languages origin, like Chines, Urdu, Turkish, who most likely to agree with me on facing this challenge. It may not mean much for someone who uses English as the only language to use for all aspects of life, social, education and business, like in USA. In the Arabian gulf, English and Arabic are used side by side (metropolitan cities) in all aspects of life.

I have discussed this issue with many stakeholders in this topic before, and I guess FOLIO now opens the doors wide open for dev companies like us to be innovative while tackling (local) challenges like this, without having to wait for the closed source commercial software company to put it on their priority list to be executed after several years maybe, as happened to us about ten years ago when we used to sell Sirsi Corp. Unicorn (now called Symphony).

I hope this clarifies my point more. Welcome to sharing everyone thoughts on this topic.

Comment by Massoud Alshareef [ 17/Sep/20 ]

I am happy to also introduce two other features, beside the Arabic/ Hindu numeral shapes for dates edit and display, that are coming to the Arabic FOLIO users, which are developed to meet some of the local requirements when handling display of Arabic names in R2L, and when displaying purely English or purely Arabic fields in both directions.

Using Arabic punctuation (comma) after Arabic last names while in R2L.

You can see my name display with the Arabic comma in this http://folio-testing.maktabat-guides.com/users/preview/635541a9-4ddf-4dfb-9a50-94d1fd1834b7?filters=active.active&sort=name.

Displaying fields with purely English text in L2R direction while in R2L locale, and Displaying fields with purely Arabic text in R2L direction while in L2R locale

under testing.

Comment by Zak Burke [ 17/Sep/20 ]

Do you mean these people (Oleksii, Oleksiy, and Aliaskei) write their name the same in their native language but spell (differently) in English ? If the answer is yes, then you do agree with my point.

Yes, that was precisely the point I understand and agree with you.

Comment by Massoud Alshareef [ 17/Sep/20 ]

Thank you Zak Burke.. Reaching and synchronizing with your thoughts mean a lot to me and the kware team.

Generated at Fri Feb 09 00:08:29 UTC 2024 using Jira 1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d.