Локализация User Manager

По умолчанию все ярлыки User Manager на английском языке. Некоторые из них можно первести на желаемый язык:

  • названия действий ("Reset", "Delete", etc.)
  • ярлыки основных экранов ("Users", "Roles", "Rules")
  • ярлыки полей пользователей ("status", "last visited", etc.)
  • ярлыки кнопок

В пакете User Manager присутствует только en-US локаль. Ознакомьтесь с нашим репозиторием. Здесь вы можете найти интересующую вас локаль или же создать свою.

Структура локалей

Названия хранятся в объекте:

export default {
    Active: "Active",
    "Add credentials": "Add credentials",
    "Are you sure to delete credentials?": "Are you sure to delete credentials?",
    "Add new user": "Add new user",
    "Are you sure to delete this user?": "Are you sure to delete this user?",
    Audit: "Audit",
    Avatar: "Avatar",
    Cancel: "Cancel",
    "changes by": "changes by",
    "changes to": "changes to",
    Color: "Color",
    Credentials: "Credentials",
    Delete: "Delete",
    Deleted: "Deleted",
    "Delete credentials": "Delete credentials",
    Details: "Details",
    Done: "Done",
    "Enter password": "Enter password",
    "Enter user name": "Enter user name",
    "Error: no email": "Error: no email",
    "Full Name": "Full Name",
    General: "General",
    "Generate password": "Generate password",
    Description: "Description",
    Email: "Email",
    "Last seen": "Last seen",
    "Last visited": "Last visited",
    logins: "logins",
    Members: "Members",
    "Members assigned": "Members assigned",
    Modify: "Modify",
    Name: "Name",
    New: "New",
    "New password": "New password",
    "Not active": "Not active",
    "No members": "No members assigned",
    "No rules": "No rules assigned",
    Operation: "Operation",
    "Please submit an email first!": "Please submit an email first!",
    Registered: "Registered",
    "Reset password": "Reset password",
    Rules: "Rules",
    "Rules assigned": "Rules assigned",
    "Rule Matrix": "Rule Matrix",
    Save: "Save",
    Search: "Search",
    Status: "Status",
    Target: "Target",
    Unknown: "Unknown",
    "Unknown user": "Unknown user",
    "Upload new photo": "Upload new photo",
    "User Manager": "User Manager",
    Users: "Users",
    When: "When",
    Who: "Who",
 
    // used if Roles feature enabled
    "Add new role": "Add new role",
    "All assignments": "All assignments",
    "Are you sure to delete this role ?": "Are you sure to delete this role?",
    "Assigned directly": "Assigned directly",
    "Enter role name": "Enter role name",
    "No roles": "No roles assigned",
    Role: "Role",
    Roles: "Roles",
    "Roles assigned": "Roles assigned",
    "Role Matrix": "Role Matrix",
};

Как задать свою локаль

Чтобы изменить локаль по умолчанию, необходимо:

  • создать локаль с переводами (ниже представлена русская локаль) внутри объекта userManager.locales следующим образом:
// Русская локаль
userManager.locales.ru = {
    Delete: "Удалить",
    "Name": "Имя"
};
  • задать текущую локаль для User Manager с помощью свойства locale внутри конструктора:
webix.ready(function() {
    // пользовательский скролл, необязательно
    if (!webix.env.touch && webix.env.scrollSize) ъ
      webix.CustomScroll.init();
 
    webix.ui({
        view: "usermanager",
        url: "https://docs.webix.com/usermanager-backend/",
        locale: {
            lang: "ru"
        }
    });
});

Related sample:  User Manager: Custom Locale

Как менять локали динамически

Вы можете менять языки динамически, например, при клике по соответствующим кнопкам на панели инструментов:

  • сперва создайте локали с переводом желаемых маркеров::
userManager.locales.ru = {  // Русская
    Users: "Пользователи", "Rules": "Права доступа", ...
};
 
userManager.locales.zh = {  // Китайская 
    Users: "用户", "Rules": "规则", ...
};
  • меняйте языки с помощью метода setLang сервиса "locale":
{
  rows: [
    {
      view: "segmented", options: ["en", "ru", "zh"],
      click: function() {
        const locale = $$("um1").getService("locale");
        locale.setLang(this.getValue()); // zh, ru or en
      }
    },
    { view:"usermanager", id:"um1" }
  ]
}

Related sample:  User Manager: Switching Locales

Как синхронизировать User Manager и Webix локали

Ярлыки Webix компонентов внутри User Manager, а также локализация дат и чисел зависят от текущей локали Webix. Чтобы синхронизировать локализацию User Manager и Webix, создайте объект webix внутри свойства locale:

{
    view:"usermanager",
    url:"https://docs.webix.com/usermanager-backend/",
    locale: {
      lang: "en",
      webix: {
        // switch Webix the selected locale
        en: "en-US",
        zh: "zh-CN"
      }
    }
}
Наверх