<?php /** * eSales Media Formilicious for Contao Open Source CMS * * Copyright (C) 2013-2014 eSalesMedia * * @package eSM_formilicious * @link http://www.esales-media.de * @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL * * @author Benjamin Roth <benjamin@esales-media.de> */ /** * Run in a custom namespace, so the class can be replaced */ namespace eSM_formilicious; /** * Class ModulePersonalData * * Front end module "personal data". * @copyright Leo Feyer 2005-2014 * @author Leo Feyer <https://contao.org> * @package Core */ class ModulePersonalData extends \Contao\ModulePersonalData { public function generate() { $this->loadDataContainer('tl_member'); $originalDca = $GLOBALS['TL_DCA']['tl_member']; $return = parent::generate(); $GLOBALS['TL_DCA']['tl_member'] = $originalDca; return $return; } /** * Generate the module */ protected function compile() { /** @var \PageModel $objPage */ global $objPage; $GLOBALS['TL_LANGUAGE'] = $objPage->language; \System::loadLanguageFile('tl_member'); $this->loadDataContainer('tl_member'); $arrEditable = []; foreach ($this->editable as $key=>$fielddata) { // Split formilicious editable data in single vars list($field, $fieldWidth, $fieldClr, $fieldMandatory) = array_values($fielddata); $GLOBALS['TL_DCA']['tl_member']['fields'][$field]['eval']['eSM_fl_width'] = $fieldWidth; $GLOBALS['TL_DCA']['tl_member']['fields'][$field]['eval']['eSM_fl_clear'] = $fieldClr; if ($fieldMandatory) { $GLOBALS['TL_DCA']['tl_member']['fields'][$field]['eval']['mandatory'] = $fieldMandatory; } else { $GLOBALS['TL_DCA']['tl_member']['fields'][$field]['eval']['mandatory'] = false; } $arrEditable[$key] = $field; } $this->editable = $arrEditable; parent::compile(); } }