From cd5c7c828753322da8e39e8a88288a2c03c6ef23 Mon Sep 17 00:00:00 2001 From: Alexander Shursha Date: Mon, 31 Jul 2017 09:02:50 +0300 Subject: [PATCH] Restore setLocale from Phalcon --- .../OPNsense/Base/ApiControllerBase.php | 2 +- .../OPNsense/Base/ControllerBase.php | 23 +---------------- .../OPNsense/Base/ControllerRoot.php | 25 ++++++------------- 3 files changed, 10 insertions(+), 40 deletions(-) diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Base/ApiControllerBase.php b/src/opnsense/mvc/app/controllers/OPNsense/Base/ApiControllerBase.php index 7032c3c87..6bc2c5c81 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Base/ApiControllerBase.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Base/ApiControllerBase.php @@ -91,7 +91,7 @@ class ApiControllerBase extends ControllerRoot { // disable view processing set_error_handler(array($this, 'APIErrorHandler')); - self::setLocale(self::getLangEncode()); + self::getTranslator(); } /** diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerBase.php b/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerBase.php index 14907422a..36bcd7aa9 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerBase.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerBase.php @@ -29,8 +29,6 @@ namespace OPNsense\Base; use OPNsense\Core\Config; -use OPNsense\Base\ViewTranslator; -use Phalcon\Mvc\Controller; /** * Class ControllerBase implements core controller for OPNsense framework @@ -38,25 +36,6 @@ use Phalcon\Mvc\Controller; */ class ControllerBase extends ControllerRoot { - /** - * translate a text - * @param OPNsense\Core\Config $cnf config handle - * @return ViewTranslator - */ - public function getTranslator() - { - $lang_encoding = self::getLangEncode(); - - $ret = new ViewTranslator(array( - 'directory' => '/usr/local/share/locale', - 'defaultDomain' => 'OPNsense', - 'locale' => $lang_encoding, - )); - - self::setLocale($lang_encoding); - return $ret; - } - /** * convert xml form definition to simple data structure to use in our Volt templates * @@ -195,7 +174,7 @@ class ControllerBase extends ControllerRoot $cnf = Config::getInstance(); // set translator - $this->view->setVar('lang', $this->getTranslator()); + $this->view->setVar('lang', self::getTranslator()); $this->view->menuSystem = $menu->getItems("/ui".$this->router->getRewriteUri()); // set theme in ui_theme template var, let template handle its defaults (if there is no theme). diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerRoot.php b/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerRoot.php index b91400751..99eb4c0ef 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerRoot.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerRoot.php @@ -49,9 +49,10 @@ class ControllerRoot extends Controller } /** - * Get lang encoding for gettext + * translate a text + * @return ViewTranslator */ - public static function getLangEncode() + public static function getTranslator() { $lang = 'en_US'; @@ -63,21 +64,11 @@ class ControllerRoot extends Controller } } - return $lang . '.UTF-8'; - } - - /** - * Set locale for gettext - */ - public static function setLocale($lang_encoding) - { - $textdomain = 'OPNsense'; - - /* this isn't being done by Phalcon */ - putenv('LANG=' . $lang_encoding); - textdomain($textdomain); - bindtextdomain($textdomain, '/usr/local/share/locale'); - bind_textdomain_codeset($textdomain, $lang_encoding); + return new ViewTranslator(array( + 'directory' => '/usr/local/share/locale', + 'defaultDomain' => 'OPNsense', + 'locale' => $lang . '.UTF-8', + )); } /**