У меня Prestashop 1.5.5.0 и Универсальный модуль оплаты от ORS v1.7. Данный баг устойчиво проявляется на всех Prestashop 1.5.x и Универсальном модуле оплаты vv1.5-1.7. На других не проверял.
Несмотря на наличие полного перевода на русский язык (ru.php), интерфейс админки Универсального модуля оплаты все равно оставался на английском языке.
Единственным переведенным стрингом было слово "Действия" в шапке последней колонки.
Пробовал все, что возможно с ru.php - копировал его с соответствующей правкой местоположения (модуль, шаблон) в папку с самим модуле и в папку \themes\MOЙШАБЛОН\modules\universalpay\translations\
Ничего не менялось. Тогда вообще удалил ru.php модуля изо всех мест. Самое интересное - стринг "Действия" остался на русском как и был. Стало ясно, что он берется из другого места. Путем поиска нашел, что из \translations\ru\admin.php
Там их несколько у меня строка 4062.
Пошел совершенно тупым путем.
Исправил файл \themes\MOЙШАБЛОН\modules\universalpay\translations\ru.php следующим образом:
Начало всех строк из ru.php для Универсального модуля оплаты в виде
$_MODULE['<{universalpay}default_my>adminunipaysystem_
было заменено вначале на $_LANGADM['Helper (как в файле \translations\ru\admin.php)
$_LANGADM['Helperb718adec73e04ce3ec720dd11a06a308'] = 'ID';
$_LANGADM['Helper8c2857a9ad1d8f31659e35e904e20fa6'] = 'Логотип';
$_LANGADM['Helper49ee3087348e8d44e1feda1917443987'] = 'Название';
$_LANGADM['Helperc1069a480848e06782b81b8bea9c0c94'] = 'Краткое описание';
$_LANGADM['Helper86754577897acfb25deb69039d49d9a7'] = 'Показывать';
$_LANGADM['Helperf9c8caf36e4edd9019ad377a3e5913f9'] = 'Платежные системы';
$_LANGADM['Helper4e140ba723a03baa6948340bf90e2ef6'] = 'Название:';
$_LANGADM['Helper6252c0f2c2ed83b7b06dfca86d4650bb'] = 'Недопустимые символы:';
$_LANGADM['Helper6637b53a5820cef0817b7f2a2553bfc8'] = 'Показывать:';
$_LANGADM['Helper00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Активен';
$_LANGADM['Helperb9f5c797ebbf55adccdd8539a65a0241'] = 'Не активен';
$_LANGADM['Helper234078adec0a64008b6ae77653776cfa'] = 'Краткое описание:';
$_LANGADM['Helperc1069a480848e06782b81b8bea9c0c94'] = 'Краткое описание';
$_LANGADM['Helpera973d7208bb1ba1588ff414509cf7e4e'] = 'Отображается на странице выбора способа оплаты.';
$_LANGADM['Helperd0042a700e9bdf79689d63ee6846dc0e'] = 'Развернутое описание:';
$_LANGADM['Helperccab7bfd5b0b1989d5475c9a1a5effb2'] = '%total% заменяется на значение суммы оплаты';
$_LANGADM['Helper446e070f627483565661f8a26b4f4849'] = 'Описание при успешном оформлении заказа:';
$_LANGADM['Helper70f76d85dea09b3c0bd1d0c3f8035c34'] = '%order_number% заменяется номером заказа, %total% - суммой заказа.';
$_LANGADM['Helper461900b74731e07320ca79366df3e809'] = 'Логотип:';
$_LANGADM['Helper3f8e67d2ef961f473f481b2da4d74f13'] = 'Загрузите логотип способа оплаты с Вашего компьютера.';
$_LANGADM['Helper4617d8d0a8639a14eb051de337cf5498'] = 'Статус заказа:';
$_LANGADM['Helper6d448d81cdfb465c458a0f221bbef48d'] = 'Статус заказа после его размещения.';
$_LANGADM['Helperab8cba13a061fe8d4a330bcc8d6b0175'] = 'Способы доставки:';
$_LANGADM['Helper14c5920c988429689db102b62fc72b2c'] = 'Способы доставки, с которыми используются этот способ оплаты.';
$_LANGADM['Helper8783bc7ae2b9e8d93a2bc15150aaefa8'] = 'Группы:';
$_LANGADM['Helper9ba5fe29e0040bbc6593091557681cf4'] = 'Группы покупателей, которым доступен данный способ оплаты';
$_LANGADM['Helper38fb7d24e0d60a048f540ecb18e13376'] = 'Сохранить';
Тогда все заработало как надо. Что будет при переводе через админку не знаю.
Работает и такой вариант: вставить все эти строки в \translations\ru\admin.php после строки:
$_LANGADM['Helper06df33001c1d7187fdd81ea1f5b277aa'] = 'Действия';
При этом \themes\MOЙШАБЛОН\modules\universalpay\translations\ru.php можно не править - все равно это никак не сказывалось на переводе в админке.
Где ошибка в модуле? Как исправить модуль, чтобы все же через админку Prestashop править перевод по нормальному?