/** * Create child object from the classname of the model * * @param object $modelChild The childs model * @return \TYPO3\CMS\Form\View\Form\Element\AbstractElementView */ public function createChildElementFromModel($modelChild) { $childElement = NULL; $class = \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getLastPartOfClassName($modelChild); $className = 'TYPO3\\CMS\\Form\\View\\Form\\FormView_Element_' . ucfirst($class); if (class_exists($className)) { $childElement = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance($className, $modelChild); } return $childElement; }
/** * Create child object from the classname of the model * * @param AbstractElement $modelChild The childs model * @return \TYPO3\CMS\Form\View\Form\Element\AbstractElementView */ public function createChildElementFromModel($modelChild) { $childElement = NULL; $class = \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getLastPartOfClassName($modelChild); $className = 'TYPO3\\CMS\\Form\\View\\Form\\Element\\' . ucfirst($class) . 'ElementView'; if (class_exists($className)) { $childElement = ObjectFactory::createFormObject($className, $modelChild); } return $childElement; }
/** * @param \TYPO3\CMS\Form\Domain\Model\Element\AbstractElement $modelChild * @param integer $spaces * @return string */ protected function renderChild(\TYPO3\CMS\Form\Domain\Model\Element\AbstractElement $modelChild, $spaces) { $content = ''; $class = \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getLastPartOfClassName($modelChild); $className = 'TYPO3\\CMS\\Form\\View\\Mail\\MailView_Plain_Element_' . ucfirst($class); if (class_exists($className)) { /** @var $childElement \TYPO3\CMS\Form\View\Mail\Plain\Element\AbstractElementView */ $childElement = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance($className, $modelChild, $spaces); $elementContent = $childElement->render(); if ($elementContent != '') { $content = $childElement->render() . chr(10); } } return $content; }
/** * @param \TYPO3\CMS\Form\Domain\Model\Element\AbstractElement $modelChild * @param int $spaces * @return string */ protected function renderChild(\TYPO3\CMS\Form\Domain\Model\Element\AbstractElement $modelChild, $spaces) { $content = ''; $class = \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getLastPartOfClassName($modelChild); $className = 'TYPO3\\CMS\\Form\\View\\Mail\\Plain\\Element\\' . ucfirst($class) . 'ElementView'; if (class_exists($className)) { /** @var $childElement \TYPO3\CMS\Form\View\Mail\Plain\Element\AbstractElementView */ $childElement = ObjectFactory::createFormObject($className, $modelChild, $spaces); $elementContent = $childElement->render(); if ($elementContent != '') { $content = $childElement->render() . LF; } } return $content; }
show :=addToList(login) } '); } // Page module hook $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['cms/layout/class.tx_cms_layout.php']['tt_content_drawItem'][$_EXTKEY] = 'EXT:' . $_EXTKEY . '/Classes/Hooks/CmsLayout.php:TYPO3\\CMS\\Felogin\\Hooks\\CmsLayout'; /** * Extension: form * File: C:/xampp/htdocs/typo3_6.2.14/typo3/sysext/form/ext_localconf.php */ $_EXTKEY = 'form'; $_EXTCONF = $GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf'][$_EXTKEY]; if (!defined('TYPO3_MODE')) { die('Access denied.'); } \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->initializeFormObjects()->initializePageTsConfig(); /** * Extension: impexp * File: C:/xampp/htdocs/typo3_6.2.14/typo3/sysext/impexp/ext_localconf.php */ $_EXTKEY = 'impexp'; $_EXTCONF = $GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf'][$_EXTKEY]; if (!defined('TYPO3_MODE')) { die('Access denied.'); } $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/backend.php']['constructPostProcess'][] = 'TYPO3\\CMS\\Impexp\\Hook\\BackendControllerHook->addJavaScript'; /** * Extension: lowlevel * File: C:/xampp/htdocs/typo3_6.2.14/typo3/sysext/lowlevel/ext_localconf.php */ $_EXTKEY = 'lowlevel';
/** * Returns the type for the element wraps, * like <li class="csc-form-element csc-form-element-abstract">...</li> * * @return string */ public function getElementWrapType() { $elementType = strtolower(\TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getLastPartOfClassName($this->model)); $wrapType = 'csc-form-element csc-form-element-' . $elementType; return $wrapType; }
/** * Get the additional value * * @return string The value of the additional */ public function getAdditionalValue() { return htmlspecialchars($this->model->getAdditionalValue(\TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getLastPartOfClassName($this, TRUE))); }
/** * Create and add element by type. * This can be a derived Typoscript object by "<", * a form element, or a regular Typoscript object. * * @param \TYPO3\CMS\Form\Domain\Model\Element\AbstractElement $parentElement The parent for the new element * @param string $class Classname for the element * @param array $arguments Configuration array * @return void */ public function setElementType(\TYPO3\CMS\Form\Domain\Model\Element\AbstractElement $parentElement, $class, array $arguments) { if (in_array($class, \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getFormObjects())) { $this->addElement($parentElement, $class, $arguments); } elseif ($this->disableContentElement === FALSE) { if (substr($class, 0, 1) == '<') { $key = trim(substr($class, 1)); /** @var $typoscriptParser \TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser */ $typoscriptParser = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\TypoScript\\Parser\\TypoScriptParser'); $oldArguments = $arguments; list($class, $arguments) = $typoscriptParser->getVal($key, $GLOBALS['TSFE']->tmpl->setup); if (is_array($oldArguments) && count($oldArguments)) { $arguments = $this->getLocalConentObject()->joinTSarrays($arguments, $oldArguments); } $GLOBALS['TT']->incStackPointer(); $contentObject = array('cObj' => $class, 'cObj.' => $arguments); $this->addElement($parentElement, 'content', $contentObject); $GLOBALS['TT']->decStackPointer(); } else { $contentObject = array('cObj' => $class, 'cObj.' => $arguments); $this->addElement($parentElement, 'content', $contentObject); } } }
/** * Set the element type of the object * * Checks if the typoscript object is part of the FORM or has a predefined * class for name or header object * * @param AbstractJsonElement $parentElement The parent object * @param string $class A predefined class * @param array $arguments Configuration array * @return void */ private function setElementType(AbstractJsonElement $parentElement, $class, array $arguments) { if (in_array($class, \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getFormObjects())) { if (strstr($arguments['class'], 'predefined-name')) { $class = 'NAME'; } $this->addElement($parentElement, $class, $arguments); } }
/** * Create and add element by type. * This can be a derived Typoscript object by "<", * a form element, or a regular Typoscript object. * * @param AbstractElement $parentElement The parent for the new element * @param string $class Classname for the element * @param array $arguments Configuration array * @return void */ public function setElementType(AbstractElement $parentElement, $class, array $arguments) { if (in_array($class, \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getFormObjects())) { $this->addElement($parentElement, $class, $arguments); } elseif ($this->disableContentElement === FALSE) { if ($class[0] === '<') { $key = trim(substr($class, 1)); /** @var $typoscriptParser \TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser */ $typoscriptParser = GeneralUtility::makeInstance(\TYPO3\CMS\Core\TypoScript\Parser\TypoScriptParser::class); $oldArguments = $arguments; list($class, $arguments) = $typoscriptParser->getVal($key, $this->frontendController->tmpl->setup); if (is_array($oldArguments) && count($oldArguments)) { $arguments = array_replace_recursive($arguments, $oldArguments); } $this->timeTracker->incStackPointer(); $contentObject = array('cObj' => $class, 'cObj.' => $arguments); $this->addElement($parentElement, 'content', $contentObject); $this->timeTracker->decStackPointer(); } else { $contentObject = array('cObj' => $class, 'cObj.' => $arguments); $this->addElement($parentElement, 'content', $contentObject); } } }
<?php if (!defined('TYPO3_MODE')) { die('Access denied.'); } require_once \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('cdsrc_recaptcha_form') . 'Classes/Domain/Model/Element/RecaptchaElement.php'; require_once \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('cdsrc_recaptcha_form') . 'Classes/Domain/Model/Json/RecaptchaJsonElement.php'; require_once \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('cdsrc_recaptcha_form') . 'Classes/Validation/RecaptchaValidator.php'; require_once \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::extPath('cdsrc_recaptcha_form') . 'Classes/View/Form/Element/RecaptchaElementView.php'; $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['form']['hooks']['renderWizard'][] = 'CDSRC\\CdsrcRecaptchaForm\\Hooks\\WizardView->render'; $GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['form']['hooks']['JsonToTypoScript'][] = 'CDSRC\\CdsrcRecaptchaForm\\Hooks\\JsonToTypoScript'; $GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Form\\Domain\\Factory\\JsonToTypoScript'] = array('className' => 'CDSRC\\CdsrcRecaptchaForm\\Domain\\Factory\\JsonToTypoScript'); \TYPO3\CMS\Form\Utility\FormUtility::getInstance()->setFormObjects(array_merge(\TYPO3\CMS\Form\Utility\FormUtility::getInstance()->getFormObjects(), array('RECAPTCHA'))); \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig('<INCLUDE_TYPOSCRIPT: source="FILE:EXT:' . $_EXTKEY . '/Configuration/TSconfig/modWizards.ts">');