Как отключить определенное поле для редактирования? icms2+

 
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1827
В типе контента имеется обычное поле для ввода.
Как отключить его на странице редактирования?

Как правильно использовать имеющие в системе хуки по такому случаю?

Пробовал использовать хук
Код PHP:
  1. cmsEventsManager::hook("content_{$ctype['name']}_form", array($form, $item))
и вроде там и проходит список полей. не что то не понял как добраться до
Код PHP:
  1. [structure:cmsForm:private] => Array
которое в содержится в передаваемом $form
Мой блог с плюшками
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2537
В базе данных. Например для новостей, cms_con_news_fields
Поиграйте с полями

is_fixed
is_fixed_type
is_system
Виджеты, поля и компоненты для instantcms 2 http://www.zau4man.ru/
Реклама
cms
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1827
Zau4man:
Поиграйте с полями
это как правило, либо отключает возможность удалить поле, либо отключает возможно использования в определенном месте.

А тут случай: при создании это поле должно быть, а при редактировании нет.

у меня сложность возникла при разборе приватного списка.
Код PHP:
  1. cmsForm Object
  2. (
  3. [is_tabbed] =>
  4. [params:cmsForm:private] => Array
  5. (
  6. )
  7.  
  8. [structure:cmsForm:private] => Array
  9. ( ...........
Как получить? Надо где-то перевести в public?
Мой блог с плюшками
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2928
kreator, тоже нужно было сделать подобное, для личных полей я сделал скрытие данных полей при редактировании средствами css ( display: none;)

Это не запрет, но для обычных юзеров вполне рабочее решение!)
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1827
reload:
скрытие данных полей при редактировании средствами css
что то мне подсказывает, что icms2+ сможет это сделать и хУком
только пока не понял как
Мой блог с плюшками
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2928
kreator:
что то мне подсказывает, что icms2+ сможет это сделать и хУком
только пока не понял как

Если будет решение то тоже буду рад!

Ну а пока для работы описанный пример с display:none довольно легко и быстро реализуется - для рабочего сайта (да и для тех кто любит простоту) вариант годный)

ps: хотя если про это пишут, то возможно скоро такое появится в коробке - функция явно напрашивается сама!)
Редактировалось: 1 раз (Последний: 31 января 2016 в 22:15)
Посетитель
small user social cms
Сообщений: 56
Kreator:
и вроде там и проходит список полей. не что то не понял как добраться до
Код PHP:

[structure:cmsForm:private] => Array

которое в содержится в передаваемом $form

Ну примерно как-то так:
Код PHP:
  1.  
  2. $fields = $form->getStructure();
  3. foreach($fields as $fieldset_id => $fieldset){ /* тут творим чего хотим*/ }
  4. $form->setStructure($fields);
Лучшие VDS для ваших сайтов | Дополнения для InstantCMS 2
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.