forum.bitel.ru
http://forum.bitel.ru/

actions/kernel.xml wtf???
http://forum.bitel.ru/viewtopic.php?f=22&t=8134
Страница 1 из 1

Автор:  Cromeshnic [ 09 июн 2013, 19:20 ]
Заголовок сообщения:  actions/kernel.xml wtf???

Стандартный kernel.xml :
Код:
      <group title="Тарифные планы">
         <group title="Глобальные тарифы">
            <action id="1004" mask="module=contract;action=ContractTariffPlan;showUsed=0;useFilter=0" title="ТП:0-Используемые/0-Фильтр"/>
              <action id="1005" mask="module=contract;action=ContractTariffPlan;showUsed=1;useFilter=0" title="ТП:1-Используемые/0-Фильтр"/>
            <action id="1006" mask="module=contract;action=ContractTariffPlan;showUsed=0;useFilter=1" title="ТП:0-Используемые/1-Фильтр"/>
            <action id="1007" mask="module=contract;action=ContractTariffPlan;showUsed=1;useFilter=1" title="ТП:1-Используемые/1-Фильтр"/>


Мля, я специально задавал собственные экшены с кодами >1000, чтобы они не пересекались со стандартными.
Изображение

Автор:  Phricker [ 09 июн 2013, 19:25 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

:D как им показали так и добавили

Автор:  skyb [ 10 июн 2013, 06:23 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

Изображение

Автор:  Cromeshnic [ 10 июн 2013, 07:08 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

Давайте какое-нибудь соглашение заключим, что ли.
А ещё лучше - отдельные xml для пользовательских экшенов, чтобы при обновлении не нужно было свои настройки восстанавливать.
Скажем, обрабатывать файлы <module>_user.xml (при наличии) и их id помещать в отдельное пространство имён. Например, добавлять префикс.
Наподобие setup_user.properties
Кстати, в setup_user.properties остаётся та же проблема с id-шниками

Автор:  Cromeshnic [ 10 июн 2013, 13:21 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

Ещё есть предложение - когда отпочковывается более узкий action от более общего, то добавлять в патч SQL-запросы с добавлением галки для нового действия во все группы и всем юзерам, где было разрешено старое.

Автор:  aardvark [ 10 июн 2013, 13:57 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

Код:
Ещё есть предложение - когда отпочковывается более узкий action от более общего, то добавлять в патч SQL-запросы с добавлением галки для нового действия во все группы и всем юзерам, где было разрешено старое.

Вот это не неда. Пожалуйста не надо.
Не надо мне такой радости. С автодобавлением разрешений.

Автор:  Cromeshnic [ 10 июн 2013, 14:40 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

Если разрешение уже было до этого фактически - почему нет? Иначе наоборот, обновился - перестало работать.

Автор:  aardvark [ 10 июн 2013, 14:59 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

потому что во все группы и всем юзерам. Это будет зоопарк.

Автор:  Cromeshnic [ 10 июн 2013, 15:02 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

Не всем же, только тем, у кого уже было.
Хотя, судя по сабжу топика, можно ожидать чего угодно :(

Автор:  snark [ 10 июн 2013, 18:09 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

Думаю что здесь есть смысл сделать нечто такое: мы где-то, в конфиге или еще где, пишем цифру с которой начинаются наши экшены, например 10000, а потом просто нумеруем свои экшены как 1, 2, 3 и т.д., цифра из конфига просто плюсуется к ним автоматом, в результате чего мы имеем 10001, 10002, 10003 и т.д.
Если появляются пересечения, то достаточно изменить всего одну цифру и все!
Лучше всего - если разработчики где-то пишут эту цифру и плюсуют, а наши экшены как нумеровались 1, 2, 3 и т.д. - так и нумеруются.

Автор:  Phricker [ 10 июн 2013, 20:03 ]
Заголовок сообщения:  Re: actions/kernel.xml wtf???

а идея Кромешника мне больше нравится.
Но в этой идее трудно сохранить дерево прав.
Т.е. добавив правило в kernel.xml я буду точно знать где оно находиться в дереве прав. Так например я добавил правило создания договора с произвольным номером.
Код:
<action id="10008" mask="module=contract;action=NewContract;custom_title=R:.+?" title="Создание договора с произвольным номером" />
  <action id="64" mask="module=contract;action=NewContract" title="Создание договора" />

ЕМНИМС оно обязательно должно быть выше правила простого создания договора. В противном случае - можно создавать договор с произвольным номером.
И все остальные права которые расширяют уже существующие правила - должны быть выше существующих.

поправьте если ошибаюсь, но раньше было так и с тех пор я именно так и поступаю.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/