From 787ee9f043acc30471a44f95e5bf30c372e4ef1c Mon Sep 17 00:00:00 2001 From: marco Date: Sun, 9 Aug 2015 21:44:37 +0200 Subject: [PATCH] Refactor Localizer into a separate class. --- lib/config/initializer.php | 38 ++------------------------ lib/config/localizer.php | 56 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 35 deletions(-) create mode 100644 lib/config/localizer.php diff --git a/lib/config/initializer.php b/lib/config/initializer.php index c49e4396f7..79980e0948 100644 --- a/lib/config/initializer.php +++ b/lib/config/initializer.php @@ -15,17 +15,12 @@ class Initializer { $activator = new Activator(); $activator->init(); - // localization - $this->setup_textdomain(); - add_action( - 'init', - array($this, 'localize'), - 0 - ); - $renderer = new Renderer(); $this->renderer = $renderer->init(); + $localizer = new Localizer($this->renderer); + $localizer->init(); + $menu = new Menu( $this->renderer, Env::$assets_url @@ -85,31 +80,4 @@ class Initializer { ); wp_enqueue_script($name); } - - public function localize() { - load_plugin_textdomain( - Env::$plugin_name, - false, - dirname(plugin_basename(Env::$file)) . '/lang/' - ); - - // set rtl flag - $this->renderer->addGlobal('is_rtl', is_rtl()); - } - - public function setup_textdomain() { - $locale = apply_filters( - 'plugin_locale', - get_locale(), - Env::$plugin_name - ); - - $language_path = Env::$languages_path.'/'.Env::$plugin_name.'-'.$locale.'.mo'; - load_textdomain(Env::$plugin_name, $language_path); - load_plugin_textdomain( - Env::$plugin_name, - false, - dirname(plugin_basename(Env::$file)) . '/lang/' - ); - } } diff --git a/lib/config/localizer.php b/lib/config/localizer.php new file mode 100644 index 0000000000..2e94353339 --- /dev/null +++ b/lib/config/localizer.php @@ -0,0 +1,56 @@ +renderer = $renderer; + } + + function init() { + add_action( + 'init', + array($this, 'setup'), + 0 + ); + } + + function setup() { + $this->loadGlobalText(); + $this->loadPluginText(); + $this->setGlobalRtl(); + } + + function loadGlobalText() { + $language_path = + Env::$languages_path + . '/' + . Env::$plugin_name + . '-' + . $this->locale() + . '.mo'; + load_textdomain(Env::$plugin_name, $language_path); + } + + function loadPluginText() { + load_plugin_textdomain( + Env::$plugin_name, + false, + dirname(plugin_basename(Env::$file)) . '/lang/' + ); + } + + function setGlobalRtl() { + $this->renderer->addGlobal('is_rtl', is_rtl()); + } + + function locale() { + $locale = apply_filters( + 'plugin_locale', + get_locale(), + Env::$plugin_name + ); + return $locale; + } +}