Skip to content

BUG: I18n functionality #3622

@ronaldohoch

Description

@ronaldohoch

Version: latest

Are you able to reproduce the bug from the demo?

  • [] Yes
  • No

What is the expected behavior?
to editor.I18n.setLocale("es") work in runtime.

Describe the bug detailed
I don't know if it's a bug or it's not supposed to work this way, also, i don't know backbone enough to know if it's possible, but, when use editor.I18n.setLocale("es") on run time, it doesn't change the labels.

What is the current behavior?
It's just set the locale internally, but not change the labels at runtime.

Describe the bug detailed

  • I created a new plugin to pass the localization files
import cookie from './cookie';

import pt from './i18n/pt';
import es from './i18n/es';

export default (editor, opts = {}) => {
  let login_language = cookie.get("login_language");
  let language = "";
  switch(login_language){
    case "en_US": language="en"; break;
    case "es_AR": language="es"; break;
    default: case "pt_BR": language="pt"; break;
  }

  const options = { ...{
    i18n: {},
    // default options
  },  ...opts };

  var I18nManager = editor.I18n;

  // Load i18n files
  I18nManager && I18nManager.addMessages({
    ...options.i18n,
    pt,
    es
  });
  
  //change editor localization
  I18nManager.setLocale(language);
};
  • On first load, got the current locale, set right on portuguese.
  • image
  • On set to spanish, it keeps the portuguese on first run:
  • image
  • If i change the tab, it set the messages to spanish:
  • image
  • And if i set it to en, we have 3 language set:
  • image
  • Here the 3 languages
  • image

Of course, the plugin works, if user is es, pt or en, it's setup properly.
But when we will set up a new editor with plugins, we can't change the labels, or i don't know how 🤔 (This is why i've created this PR: GrapesJS/blocks-basic#38)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions