/** * @param boolean $defaultConfig * * @return tx_rnbase_configurations */ private function getConfigurations($defaultConfig = false) { tx_rnbase_util_Misc::prepareTSFE(); $configurations = new tx_rnbase_configurations(); $cObj = t3lib_div::makeInstance('tslib_cObj'); $config = array('myConfId.' => array('filter.' => array('sort.' => array('fields' => 'firstField,secondField', 'link.' => array('noHash' => 1))))); if ($defaultConfig) { $config['myConfId.']['filter.']['sort.']['default.'] = array('field' => 'firstField', 'sortOrder' => 'asc'); } $configurations->init($config, $cObj, 'mklib', 'mklib'); return $configurations; }
/** * Lädt ein COnfigurations Objekt nach mit der TS aus der Extension * Dabei wird alles geholt was in "plugin.tx_$extKey", "lib.$extKey." und * "lib.links." liegt * * @param string $extKey Extension, deren TS Config geladen werden soll * @param string $extKeyTS Extension, deren Konfig innerhalb der * TS Config geladen werden soll. * Es kann also zb. das TS von mklib geladen werden aber darin die konfig für * das plugin von mkxyz * @param string $sStaticPath pfad zum TS * @param array $aConfig zusätzliche Konfig, die die default überschreibt * @param boolean $resolveReferences sollen referenzen die in lib. * und plugin.tx_$extKeyTS stehen aufgelöst werden? * @param boolean $forceTsfePreparation * @return tx_rnbase_configurations */ public static function loadConfig4BE($extKey, $extKeyTs = null, $sStaticPath = '', $aConfig = array(), $resolveReferences = false, $forceTsfePreparation = false) { $extKeyTs = is_null($extKeyTs) ? $extKey : $extKeyTs; if (!$sStaticPath) { $sStaticPath = '/static/ts/setup.txt'; } if (file_exists(t3lib_div::getFileAbsFileName('EXT:' . $extKey . $sStaticPath))) { t3lib_extMgm::addPageTSConfig('<INCLUDE_TYPOSCRIPT: source="FILE:EXT:' . $extKey . $sStaticPath . '">'); } tx_rnbase::load('tx_rnbase_configurations'); tx_rnbase::load('tx_rnbase_util_Misc'); $tsfePreparationOptions = array(); if ($forceTsfePreparation) { $tsfePreparationOptions['force'] = true; } // Ist bei Aufruf aus BE notwendig! (@TODO: sicher???) tx_rnbase_util_Misc::prepareTSFE($tsfePreparationOptions); $GLOBALS['TSFE']->config = array(); $cObj = t3lib_div::makeInstance('tslib_cObj'); $pageTsConfig = self::getPagesTSconfig(0); $tempConfig = $pageTsConfig['plugin.']['tx_' . $extKeyTs . '.']; $tempConfig['lib.'][$extKeyTs . '.'] = $pageTsConfig['lib.'][$extKeyTs . '.']; $tempConfig['lib.']['links.'] = $pageTsConfig['lib.']['links.']; if ($resolveReferences) { $GLOBALS['TSFE']->tmpl->setup['lib.'][$extKeyTs . '.'] = $tempConfig['lib.'][$extKeyTs . '.']; $GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_' . $extKeyTs . '.'] = $pageTsConfig['plugin.']['tx_' . $extKeyTs . '.']; } $pageTsConfig = $tempConfig; $qualifier = $pageTsConfig['qualifier'] ? $pageTsConfig['qualifier'] : $extKeyTs; // möglichkeit die default konfig zu überschreiben $pageTsConfig = t3lib_div::array_merge_recursive_overrule($pageTsConfig, $aConfig); $configurations = new tx_rnbase_configurations(); $configurations->init($pageTsConfig, $cObj, $extKeyTs, $qualifier); return $configurations; }