UMIhelp

Разработка сайта на UMI.CMS => Настройка системы и модулей => Тема начата: Rodogor от 13 Февраля 2013, 19:40:04

Название: Мультиязычность.
Отправлено: Rodogor от 13 Февраля 2013, 19:40:04
Здравствуйте.
Шарил по документации и не нашёл как же таки задумывалась мультиязычность в UMI CMS.
Рассмотрим на примере новости или объекта каталога. Как отнести какой-то объект к какой-то версии сайта ? Варианты: нужно, что бы все новости/объекты каталога были одинаковыми, но имели перевод ИЛИ для каждого языка свой контент.
Неужели необходимо создавать доп.поля для каждого типа данных, в который заносить поля для каждого языка, а если нужно для каждого языка свой контент - делать справочник "языки" и для каждой страницы выбирать к какому языку (или языкам) она относится ?
Название: Re:Мультиязычность.
Отправлено: admin от 13 Февраля 2013, 21:22:32
если я правильно понял ваши вопросы, то ответы на них вы найдете в документации, раздел "Интернационализация сайта" (http://dev.docs.umi-cms.ru/prakticheskie_primery/internacionalizaciya_sajta/)
Название: Re:Мультиязычность.
Отправлено: Rodogor от 13 Февраля 2013, 21:47:16
Действительно оно. Когда-то это видел, но найти снова не смог. Благодарю за ответ.
Название: Re:Мультиязычность.
Отправлено: admin от 13 Февраля 2013, 21:56:48
сам не сразу нашел, так как ищешь интуитивно мультиязычность, а не интернационализацию
Название: Re: Мультиязычность.
Отправлено: zv.web-industry от 22 Июля 2015, 10:43:40
Доброго времени суток.
Возник вопрос - а можно ли для разных языковых версий создать разных админов?
Название: Re: Мультиязычность.
Отправлено: admin от 22 Июля 2015, 12:40:09
Насколько мне известно, по умолчанию такой возможности нет.
Если только хитрить и проставлять права на страницы.
У каждой страницы есть права на работу с ней, можно сделать так, чтобы страницы на англ версии были доступны для редактирования для одного пользователя, а страницы на русском для другого.
Название: Re: Мультиязычность.
Отправлено: zv.web-industry от 22 Июля 2015, 12:49:22
Пришла такая же мысль, пока не до конца разобрался, как это сделать корректно, буду пробовать
Название: Re: Мультиязычность.
Отправлено: admin от 22 Июля 2015, 12:53:08
удобнее делать это в момент создания страниц, то есть, если у страницы проставлены правильные права (удобнее давать редактировать страницы для группы пользователей, чтобы можно было несколько пользователей добавлять к редактированию) то её подстраницы при создании будут иметь такие же права по умолчанию.

Если страницы уже есть и их много, то удобнее кастомный макрос написать для переназначения прав.
Название: Re: Мультиязычность.
Отправлено: zv.web-industry от 22 Июля 2015, 16:41:36
Конечно же, все страницы уже созданы, и нужно раздавать права на них ))) Ну и языковых версий уже 9 штук, везде страницы созданы уже
Сделал так (может кому пригодится):
$objectsCollection = umiObjectsCollection::getInstance();
$permissionsCollection = permissionsCollection::getInstance();

$pages = new selector('pages');
$pages->where('lang')->equals(2); // id языковой версии
// $pages->where('is_active')->equals(0);  // для неактивных страниц

foreach($pages as $page) {
   $permissionsCollection->setElementPermissions( 8196, $page->id, 31 );  // 8196 - моя группа админов для этой языковой версии
}

Но никак не победить мне файловый менеджер. При открытии все время шлет ошибку "Некорректный ответ сервера. Данные не формате JSON."
Пробовал указать папку для пользователя в его профиле - нет реакции.
Название: Re: Мультиязычность.
Отправлено: zv.web-industry от 22 Июля 2015, 16:49:21
Идет какой-то запрос на /admin/data/elfinder_connector/getSystemInfo/, а в ответ приходит 301 Moved Permanently, вместо 200 и ответа в JSON
Что-то я где-то недонастроил в правах? Управление файловой системой доступ у пользователя открыт
Название: Re: Мультиязычность.
Отправлено: zv.web-industry от 22 Июля 2015, 16:51:41
Идет какой-то запрос на /admin/data/elfinder_connector/getSystemInfo/, а в ответ приходит 301 Moved Permanently, вместо 200 и ответа в JSON
Что-то я где-то недонастроил в правах? Управление файловой системой доступ у пользователя открыт


Да, так и есть. В правах, в "Шаблоны данных" есть пункт "Управление файлами". Включил его - заработало. Какое имеет отношение к файловой системе - ума не приложу =(
Название: Re: Мультиязычность.
Отправлено: admin от 22 Июля 2015, 17:13:33
для того, чтобы была возможность запретить работать с файлами это нужно было вынести в настройки доступа. Почему в модуль "Шаблоны данных", не знаю
Название: Re: Мультиязычность.
Отправлено: zv.web-industry от 22 Июля 2015, 18:02:42
А есть идеи, как запретить админом залазить в другую языковую версию вообще? А то получается, что они могу просматривать структуру других языковых версий и даже копироать оттуда страницы себе в версии. Открыть, правда, потом их все равно не могут
Название: Re: Мультиязычность.
Отправлено: admin от 23 Июля 2015, 12:44:51
Если есть время можно поискать в коде есть ли возможность запретить данные действия, возможно через кастомизацию макросов.

Но первое что приходит в голову, кастомизировать админский шаблон, который выводит ссылки на другие языковые версии, чтобы они показывались только определенным пользователям.
Остается вопрос как запретить копирование страниц в другие языковые функции через контекстное меню, но тут надо смотреть в параметры, которые передаются при формировании шаблона админки и которые отвечают за формирование контекстного меню.... можно ли им передать запрет на данный пункт для определенных пользователей.