Formidable
Нужно в форму вывести дату регистрации пользователя. Форма генериться formidable. На данный момент дошел до того, что вывожу лейбу в нужном месте. А как заполнить value не могу понять. Редактировать поле не нужно. Оно только для информации
Вопрос в том. Можно ли это организовать это через xml или нужно через скрипт который вызывает ренд? И как в скрипте передать значение для ренда? Спасибо. |
Решил таким подходом:
Перед вызовом формыдаблы: $this->cr_date = $feuser->getMPerson()->record['indate']; - то что мне было нужно показать $this->userEditForm =& t3lib_div::makeInstance('*****_forms_Formidable'); Стандартный вызов. См доку $this->userEditForm->init($this, путь . '/forms/xml/member_edit.xml', еще параметр); В xml описал след: <renderlet:TEXT name="cr_date"> <label>Registriert seit</label> <data> <value> <userobj> <php><![CDATA[ return $this->_oParent->cr_date; ]]></php> </userobj> </value> </data> </renderlet:TEXT> в html который содержит темплейт: <label>{cr_date.label}</label> {cr_date.value}<br /> |
Вообще для любой инициализации удобней использовать:
1. oninit (userobj) (http://formidable.typo3.ug/reference/meta.html) 2. Sandbox (http://formidable.typo3.ug/reference...l/sandbox.html) 3. codeBehind (http://formidable.typo3.ug/pastebin/snippet/47.html) 4. Еще можно для конкретного renderlet'a использовать "process" (тоже userobj) так как он вызывается перед тем как renderlet собирается произвести вывод. |
Часовой пояс GMT +4, время: 02:46. |
Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot