Проверка введенных данных в TCA
Добрый день.
Стандартную проверку могу осуществить через: //Проверка на цифры [формат только a-z,0-9,_] 'eval' => 'required,alphanum_x,nospace', Но мне необходимо проверить существование записи в БД и если ее нет, то разрешить вставку (либо что-то другое, в зависимости от задачи)... Т.е. свого рода User Func Validation. |
Есть проверки unique (глобально) / unique in pid (на странице, на ветке страниц).
Но эти проверки проверяют значение отдельного поля. "Что-либо другое" тут не сделаешь. Смотрите в сторону хуков на сохранение записи, например такой: Код:
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['processCmdmapClass'] |
Как их подключить нашел...
И как использовать тоже нашел: PHP код:
|
Вас интересует это http://www.google.ru/search?hl=ru&q=typo3+using+hooks ?
Я обычно использую опыт других разработчиков. Поискал по слову "processCmdmap" среди установленных у меня экстов, среди них нашлись такие: comments, tt_news, dam, irfaq, templavoila. Думаю так вы сможете найти что-то похожее на то, что вам нужно сделать. |
Да это то что нужно...
PHP код:
Мне нужно: 1 момент открытия формы (после того как человек щелкнул на иконку править элемент и перешел в режим редактирования данных 2 момент сохранения формы (что бы проверить и вывести сообщение если есть ошибка) |
Смотрите исходники t3lib\class.t3lib_tcemain.php - там видно когда хуки вызываются и что в них передается. Вещи конечно не тривиальные, поразбираться придеться.
В наличии хука на событие открытия формы я вот сомневаюсь. Если вам нужно что-то очень специфическое, то может проще написать свой BE модуль со своей логикой? |
Часовой пояс GMT +4, время: 14:44. |
Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot