*/ namespace eSM_formilicious; class FormiliciousHooks extends \Controller { /** * Array containing all fields which shouldn't use Formilicous extensions * @var array */ protected $arrNoFl = array('__selector__','fieldsetfsStart','fieldsetfsStop','hidden','html','headline'); /** * Array containing all fields which shouldn't use Formilicous custom class * @var array */ protected $arrNoCustClass = array('explanation'); /** * Hook for adding Formilicious fields to the form editor * @param $strName */ public function eSMLoadDataContainer($strName) { if ($strName != 'tl_form_field') { return; } // Hook in the Formilicious fields if (is_array($GLOBALS['TL_DCA']['tl_form_field']['palettes'])) { foreach (array_keys($GLOBALS['TL_DCA']['tl_form_field']['palettes']) as $k) { if (!in_array($k,$this->arrNoFl)) { $strFl = ';{formilicious_legend},eSM_fl_width,eSM_fl_clear'; if (!in_array($k,$this->arrNoCustClass)) { $strFl.= ',eSM_fl_class'; } if ($k == 'submit') { $strFl.= ',eSM_fl_lblpadding,eSM_fl_alignment'; } $intPos = strpos($GLOBALS['TL_DCA']['tl_form_field']['palettes'][$k], ';{expert_legend'); $intDupe = strpos($GLOBALS['TL_DCA']['tl_form_field']['palettes'][$k], ';{formilicious_legend'); if ($intPos !== false && $intDupe === false) { $GLOBALS['TL_DCA']['tl_form_field']['palettes'][$k] = substr($GLOBALS['TL_DCA']['tl_form_field']['palettes'][$k], 0, $intPos) . $strFl . substr($GLOBALS['TL_DCA']['tl_form_field']['palettes'][$k], $intPos); } else if ($intDupe === false) { $GLOBALS['TL_DCA']['tl_form_field']['palettes'][$k] .= $strFl; } } } } } }