Jump to content

Нюансы с языками в модуле


Recommended Posts

В созданном модуле есть функционал показа неких страниц, доступных только админам, что то вроде

 

http://address.com/modules/mymodule/somefuncpage.php

 

Это одна из рабочих страниц плагина, на нее я вывожу некий шаблон, например так

include_once('../../config/config.inc.php');
include_once('../../init.php');

include_once(dirname(__FILE__).'/mymodule.php');

$module = new MyModule();

$module->export();

Функция выглядит так
 

public function export() {
        // проверяем на админа
        $cookie = new Cookie('psAdmin');
        if (!$cookie->id_employee) die('Access denied');

        $this->context->smarty->assign('var', $this->l('varvalue')); << Вот здесь у меня есть перевод, но он применяется не по настройкам админа, а по настройкам кастомера, то есть на язык админки пофигу
        echo $this->display(__FILE__, 'views/templates/admin/some.tpl');
}

Вот как бы мне форсировать язык в зависимости от настроек админа, а не кастомера, ато получается админом заходим на магазин, там ставим язык, идем в админку и только тогда получаем нужный язык. То есть если язык магазина и админки стоит разный, то реагировать будет на язык магазина, а хотелось бы в этом участке кода форсировать язык админа.

Link to comment
Share on other sites

$id_lang = (int)$this->context->employee->id_lang;

$this->context->employee - пустой, если зайти на любую страничку магазина - он не знает, что я работник, видит меня как гостя или покупателя, работник пустой, но если отгружаю страничку в контексте админки - то да, есть работник...

Edited by moros (see edit history)
Link to comment
Share on other sites

У языка есть ID, пропишите ID языка админа строго в коде. Или в настройках модуля добавьте параметр выбора языка для работы данного функционала. То что я написал работает только в админке, Получать какие либо данные настроек админа в фронт офисе не правильно, хотя бы из соображений безопасности.

Link to comment
Share on other sites

У языка есть ID, пропишите ID языка админа строго в коде. Или в настройках модуля добавьте параметр выбора языка для работы данного функционала. То что я написал работает только в админке, Получать какие либо данные настроек админа в фронт офисе не правильно, хотя бы из соображений безопасности.

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

Link to comment
Share on other sites

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

 

Был бы тут минус в карму, я бы его определено поставил бы тебе.

Link to comment
Share on other sites

Я написал выше решение.

как получить айди языка я знаю, как застваить его примениться только к определенным строчкам - не указали, а айди мне толку не дает.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...