本文整理汇总了PHP中TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig方法的典型用法代码示例。如果您正苦于以下问题:PHP BackendUtility::getPagesTSconfig方法的具体用法?PHP BackendUtility::getPagesTSconfig怎么用?PHP BackendUtility::getPagesTSconfig使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\CMS\Backend\Utility\BackendUtility
的用法示例。
在下文中一共展示了BackendUtility::getPagesTSconfig方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setImageorientItems
/**
* @param $imageorientConfig
* @return array
*/
public function setImageorientItems(&$imageorientConfig)
{
$pageTsConfig = BackendUtility::getPagesTSconfig(GeneralUtility::_GET('id'));
$pageTsConfig = GeneralUtility::removeDotsFromTS($pageTsConfig);
if (array_key_exists('tx_customresponsiveimages', $pageTsConfig)) {
$responsiveImageConfiguration = $pageTsConfig['tx_customresponsiveimages'];
} else {
$responsiveImageConfiguration = array();
}
$groupedItems = array();
$i = 0;
foreach ($responsiveImageConfiguration['items'] as $imageorient => $item) {
$groupedItems[$item['group']][$i][] = $GLOBALS['LANG']->sL($item['label']);
$groupedItems[$item['group']][$i][] = $imageorient;
$groupedItems[$item['group']][$i][] = array_key_exists('icon', $item) && !empty($item['icon']) ? $responsiveImageConfiguration['seliconsPath'] . $item['icon'] : NULL;
$i++;
}
$imageOrientItems = array();
foreach ($responsiveImageConfiguration['groups'] as $groupName => $group) {
if (array_key_exists('label', $group) && !empty($group['label'])) {
$imageOrientItems[] = array($GLOBALS['LANG']->sL($group['label']), '--div--');
}
if (array_key_exists($groupName, $groupedItems)) {
foreach ($groupedItems[$groupName] as $item) {
array_push($imageOrientItems, $item);
}
}
}
$imageorientConfig['items'] = $imageOrientItems;
}
示例2: initializeAction
/**
* Initializes the controller before invoking an action method.
*
* @return void
*/
protected function initializeAction()
{
$this->id = intval(GeneralUtility::_GET('id'));
$this->tsParser = new TsParserUtility();
// Get extension configuration
/** @var \TYPO3\CMS\Extensionmanager\Utility\ConfigurationUtility $configurationUtility */
$configurationUtility = $this->objectManager->get('TYPO3\\CMS\\Extensionmanager\\Utility\\ConfigurationUtility');
$extensionConfiguration = $configurationUtility->getCurrentConfiguration('themes');
// Initially, get configuration from extension manager!
$extensionConfiguration['categoriesToShow'] = GeneralUtility::trimExplode(',', $extensionConfiguration['categoriesToShow']['value']);
$extensionConfiguration['constantsToHide'] = GeneralUtility::trimExplode(',', $extensionConfiguration['constantsToHide']['value']);
// mod.tx_themes.constantCategoriesToShow.value
// Get value from page/user typoscript
$externalConstantCategoriesToShow = $this->getBackendUser()->getTSConfig('mod.tx_themes.constantCategoriesToShow', BackendUtility::getPagesTSconfig($this->id));
if ($externalConstantCategoriesToShow['value']) {
$this->externalConfig['constantCategoriesToShow'] = GeneralUtility::trimExplode(',', $externalConstantCategoriesToShow['value']);
$extensionConfiguration['categoriesToShow'] = array_merge($extensionConfiguration['categoriesToShow'], $this->externalConfig['constantCategoriesToShow']);
}
// mod.tx_themes.constantsToHide.value
// Get value from page/user typoscript
$externalConstantsToHide = $this->getBackendUser()->getTSConfig('mod.tx_themes.constantsToHide', BackendUtility::getPagesTSconfig($this->id));
if ($externalConstantsToHide['value']) {
$this->externalConfig['constantsToHide'] = GeneralUtility::trimExplode(',', $externalConstantsToHide['value']);
$extensionConfiguration['constantsToHide'] = array_merge($extensionConfiguration['constantsToHide'], $this->externalConfig['constantsToHide']);
}
$this->allowedCategories = $extensionConfiguration['categoriesToShow'];
$this->deniedFields = $extensionConfiguration['constantsToHide'];
// initialize normally used values
}
示例3: resolve
/**
* Returns RichTextElement as class name if RTE widget should be rendered.
*
* @return string|void New class name or void if this resolver does not change current class name.
*/
public function resolve()
{
$table = $this->data['tableName'];
$fieldName = $this->data['fieldName'];
$row = $this->data['databaseRow'];
$parameterArray = $this->data['parameterArray'];
$backendUser = $this->getBackendUserAuthentication();
if (!$parameterArray['fieldConf']['config']['readOnly'] && $backendUser->isRTE()) {
// @todo: Most of this stuff is prepared by data providers within $this->data already
$specialConfiguration = BackendUtility::getSpecConfParts($parameterArray['fieldConf']['defaultExtras']);
// If "richtext" is within defaultExtras
if (isset($specialConfiguration['richtext'])) {
// Operates by reference on $row! 'pid' is changed ...
BackendUtility::fixVersioningPid($table, $row);
list($recordPid, $tsConfigPid) = BackendUtility::getTSCpidCached($table, $row['uid'], $row['pid']);
// If the pid-value is not negative (that is, a pid could NOT be fetched)
if ($tsConfigPid >= 0) {
// Fetch page ts config and do some magic with it to find out if RTE is disabled on TS level.
$rteSetup = $backendUser->getTSConfig('RTE', BackendUtility::getPagesTSconfig($recordPid));
$rteTcaTypeValue = $this->data['recordTypeValue'];
$rteSetupConfiguration = BackendUtility::RTEsetup($rteSetup['properties'], $table, $fieldName, $rteTcaTypeValue);
if (!$rteSetupConfiguration['disabled']) {
// Finally, we're sure the editor should really be rendered ...
return RichtextElement::class;
}
}
}
}
return null;
}
示例4: processDatamap_afterDatabaseOperations
/**
* Generate a different preview link *
* @param string $status status
* @param string $table table name
* @param integer $recordUid id of the record
* @param array $fields fieldArray
* @param \TYPO3\CMS\Core\DataHandling\DataHandler $parentObject parent Object
* @return void
*/
public function processDatamap_afterDatabaseOperations($status, $table, $recordUid, array $fields, \TYPO3\CMS\Core\DataHandling\DataHandler $parentObject)
{
// Clear category cache
if ($table === 'sys_category') {
/** @var \TYPO3\CMS\Core\Cache\Frontend\FrontendInterface $cache */
$cache = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Core\\Cache\\CacheManager')->getCache('cache_news_category');
$cache->flush();
}
// Preview link
if ($table === 'tx_news_domain_model_news') {
// direct preview
if (!is_numeric($recordUid)) {
$recordUid = $parentObject->substNEWwithIDs[$recordUid];
}
if (isset($GLOBALS['_POST']['_savedokview_x']) && !$fields['type']) {
// If "savedokview" has been pressed and current article has "type" 0 (= normal news article)
$pagesTsConfig = \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig($GLOBALS['_POST']['popViewId']);
if ($pagesTsConfig['tx_news.']['singlePid']) {
$record = \TYPO3\CMS\Backend\Utility\BackendUtility::getRecord('tx_news_domain_model_news', $recordUid);
$parameters = array('no_cache' => 1, 'tx_news_pi1[controller]' => 'News', 'tx_news_pi1[action]' => 'detail', 'tx_news_pi1[news_preview]' => $record['uid']);
if ($record['sys_language_uid'] > 0) {
if ($record['l10n_parent'] > 0) {
$parameters['tx_news_pi1[news_preview]'] = $record['l10n_parent'];
}
$parameters['L'] = $record['sys_language_uid'];
}
$GLOBALS['_POST']['popViewId_addParams'] = \TYPO3\CMS\Core\Utility\GeneralUtility::implodeArrayForUrl('', $parameters, '', FALSE, TRUE);
$GLOBALS['_POST']['popViewId'] = $pagesTsConfig['tx_news.']['singlePid'];
}
}
}
}
示例5: adminLinks
/**
* Administrative links for a table / record
*
* @param string $table Table name
* @param array $row Record for which administrative links are generated.
*
* @return string HTML link tags.
*/
public function adminLinks($table, array $row)
{
if ($table !== 'tx_commerce_products') {
return parent::adminLinks($table, $row);
} else {
$language = $this->getLanguageService();
// Edit link:
$adminLink = '<a href="#" onclick="' . htmlspecialchars(\TYPO3\CMS\Backend\Utility\BackendUtility::editOnClick('&edit[' . $table . '][' . $row['uid'] . ']=edit', $this->doc->backPath)) . '">' . \TYPO3\CMS\Backend\Utility\IconUtility::getSpriteIcon('actions-document-open', array('title' => $language->sL('LLL:EXT:lang/locallang_core.xml:cm.edit', TRUE))) . '</a>';
// Delete link:
$adminLink .= '<a href="' . htmlspecialchars($this->doc->issueCommand('&cmd[' . $table . '][' . $row['uid'] . '][delete]=1')) . '">' . \TYPO3\CMS\Backend\Utility\IconUtility::getSpriteIcon('actions-edit-delete', array('title' => $language->sL('LLL:EXT:lang/locallang_core.php:cm.delete', TRUE))) . '</a>';
if ($row['pid'] == -1) {
// get page TSconfig
$pagesTyposcriptConfig = \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig($GLOBALS['_POST']['popViewId']);
if ($pagesTyposcriptConfig['tx_commerce.']['singlePid']) {
$previewPageId = $pagesTyposcriptConfig['tx_commerce.']['singlePid'];
} else {
$previewPageId = $GLOBALS['TYPO3_CONF_VARS']['EXTCONF'][COMMERCE_EXTKEY]['extConf']['previewPageID'];
}
$sysLanguageUid = (int) $row['sys_language_uid'];
/**
* Product
*
* @var $product Tx_Commerce_Domain_Model_Product
*/
$product = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('Tx_Commerce_Domain_Model_Product', $row['t3ver_oid'], $sysLanguageUid);
$product->loadData();
$getVars = ($sysLanguageUid > 0 ? '&L=' . $sysLanguageUid : '') . '&ADMCMD_vPrev[' . rawurlencode($table . ':' . $row['t3ver_oid']) . ']=' . $row['uid'] . '&no_cache=1&tx_commerce_pi1[showUid]=' . $product->getUid() . '&tx_commerce_pi1[catUid]=' . current($product->getMasterparentCategory());
$adminLink .= '<a href="#" onclick="' . htmlspecialchars(\TYPO3\CMS\Backend\Utility\BackendUtility::viewOnClick($previewPageId, $this->doc->backPath, \TYPO3\CMS\Backend\Utility\BackendUtility::BEgetRootLine($row['_REAL_PID']), '', '', $getVars)) . '">' . \TYPO3\CMS\Backend\Utility\IconUtility::getSpriteIcon('actions-document-view') . '</a>';
}
return $adminLink;
}
}
示例6: initializeAction
/**
* Initializes the controller before invoking an action method.
*
* @return void
*/
protected function initializeAction()
{
$this->id = intval(GeneralUtility::_GET('id'));
$this->tsParser = new TsParserUtility();
// extension configuration
$extensionConfiguration = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['themes']);
$extensionConfiguration['categoriesToShow'] = GeneralUtility::trimExplode(',', $extensionConfiguration['categoriesToShow']);
$extensionConfiguration['constantsToHide'] = GeneralUtility::trimExplode(',', $extensionConfiguration['constantsToHide']);
// mod.tx_themes.constantCategoriesToShow.value
$externalConstantCategoriesToShow = $GLOBALS['BE_USER']->getTSConfig('mod.tx_themes.constantCategoriesToShow', BackendUtility::getPagesTSconfig($this->id));
if ($externalConstantCategoriesToShow['value']) {
$this->externalConfig['constantCategoriesToShow'] = GeneralUtility::trimExplode(',', $externalConstantCategoriesToShow['value']);
ArrayUtility::mergeRecursiveWithOverrule($extensionConfiguration['categoriesToShow'], $this->externalConfig['constantCategoriesToShow']);
} else {
$this->externalConfig['constantCategoriesToShow'] = array();
}
// mod.tx_themes.constantsToHide.value
$externalConstantsToHide = $GLOBALS['BE_USER']->getTSConfig('mod.tx_themes.constantsToHide', BackendUtility::getPagesTSconfig($this->id));
if ($externalConstantsToHide['value']) {
$this->externalConfig['constantsToHide'] = GeneralUtility::trimExplode(',', $externalConstantsToHide['value']);
ArrayUtility::mergeRecursiveWithOverrule($extensionConfiguration['constantsToHide'], $this->externalConfig['constantsToHide']);
} else {
$this->externalConfig['constantsToHide'] = array();
}
$this->allowedCategories = $extensionConfiguration['categoriesToShow'];
$this->deniedFields = $extensionConfiguration['constantsToHide'];
// initialize normally used values
}
示例7: processDatamap_afterDatabaseOperations
/**
* This method is called by a hook in the TYPO3 core when a record is saved.
*
* We use the tx_linkhandler for backend "save & show" button to display records on the configured detail view page.
*
* @param string $status Type of database operation i.e. new/update.
* @param string $table The table currently being processed.
* @param integer $id The records id (if any).
* @param array $fieldArray The field names and their values to be processed (passed by reference).
* @param \TYPO3\CMS\Core\DataHandling\DataHandler $pObj Reference to the parent object.
*/
public function processDatamap_afterDatabaseOperations($status, $table, $id, $fieldArray, $pObj)
{
if (isset($GLOBALS['_POST']['_savedokview_x'])) {
$settingFound = FALSE;
$currentPageId = \TYPO3\CMS\Core\Utility\MathUtility::convertToPositiveInteger($GLOBALS['_POST']['popViewId']);
$rootPageData = $this->getRootPage($currentPageId);
$defaultPageId = isset($rootPageData) && array_key_exists('uid', $rootPageData) ? $rootPageData['uid'] : $currentPageId;
$pagesTsConfig = \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig($currentPageId);
$handlerConfigurationStruct = $pagesTsConfig['mod.']['tx_linkhandler.'];
// search for the current setting for given table
foreach ($pagesTsConfig['mod.']['tx_linkhandler.'] as $key => $handler) {
if (is_array($handler) && $handler['listTables'] === $table) {
$settingFound = TRUE;
$selectedConfiguration = $key;
break;
}
}
if ($settingFound) {
$l18nPointer = array_key_exists('transOrigPointerField', $GLOBALS['TCA'][$table]['ctrl']) ? $GLOBALS['TCA'][$table]['ctrl']['transOrigPointerField'] : '';
if (!\TYPO3\CMS\Core\Utility\MathUtility::canBeInterpretedAsInteger($id)) {
$id = $pObj->substNEWwithIDs[$id];
}
if (\TYPO3\CMS\Core\Utility\MathUtility::canBeInterpretedAsInteger($id)) {
$recordArray = \TYPO3\CMS\Backend\Utility\BackendUtility::getRecord($table, $id);
} else {
$recordArray = $fieldArray;
}
if (array_key_exists('previewPageId', $handlerConfigurationStruct[$selectedConfiguration]) && \TYPO3\CMS\Core\Utility\MathUtility::convertToPositiveInteger($handlerConfigurationStruct[$selectedConfiguration]['previewPageId']) > 0) {
$previewPageId = \TYPO3\CMS\Core\Utility\MathUtility::convertToPositiveInteger($handlerConfigurationStruct[$selectedConfiguration]['previewPageId']);
} else {
$previewPageId = \TYPO3\CMS\Core\Utility\MathUtility::convertToPositiveInteger($defaultPageId);
}
if ($GLOBALS['BE_USER']->workspace != 0) {
$timeToLiveHours = intval($GLOBALS['BE_USER']->getTSConfigVal('options.workspaces.previewLinkTTLHours')) ? intval($GLOBALS['BE_USER']->getTSConfigVal('options.workspaces.previewLinkTTLHours')) : 24 * 2;
$wsPreviewValue = ';' . $GLOBALS['BE_USER']->workspace . ':' . $GLOBALS['BE_USER']->user['uid'] . ':' . 60 * 60 * $timeToLiveHours;
// get record UID for
if (array_key_exists($l18nPointer, $recordArray) && $recordArray[$l18nPointer] > 0 && $recordArray['sys_language_uid'] > 0) {
$id = $recordArray[$l18nPointer];
} elseif (array_key_exists('t3ver_oid', $recordArray) && intval($recordArray['t3ver_oid']) > 0) {
// this makes no sense because we already receive the UID of the WS-Placeholder which will be the real record in the LIVE-WS
$id = $recordArray['t3ver_oid'];
}
} else {
$wsPreviewValue = '';
if (array_key_exists($l18nPointer, $recordArray) && $recordArray[$l18nPointer] > 0 && $recordArray['sys_language_uid'] > 0) {
$id = $recordArray[$l18nPointer];
}
}
$previewDomainRootline = \TYPO3\CMS\Backend\Utility\BackendUtility::BEgetRootLine($previewPageId);
$previewDomain = \TYPO3\CMS\Backend\Utility\BackendUtility::getViewDomain($previewPageId, $previewDomainRootline);
$linkParamValue = 'record:' . $table . ':' . $id;
$queryString = '&eID=linkhandlerPreview&linkParams=' . urlencode($linkParamValue . $wsPreviewValue);
$languageParam = '&L=' . $recordArray['sys_language_uid'];
$queryString .= $languageParam . '&authCode=' . \TYPO3\CMS\Core\Utility\GeneralUtility::stdAuthCode($linkParamValue . $wsPreviewValue . intval($recordArray['sys_language_uid']), '', 32);
$GLOBALS['_POST']['viewUrl'] = $previewDomain . '/index.php?id=' . $previewPageId . $queryString . '&y=';
$GLOBALS['_POST']['popViewId_addParams'] = $queryString;
}
}
}
示例8: getTemplateLayoutsFromTsConfig
/**
* Get template layouts defined in TsConfig
*
* @param $pageUid
* @return array
*/
protected function getTemplateLayoutsFromTsConfig($pageUid)
{
$templateLayouts = array();
$pagesTsConfig = BackendUtility::getPagesTSconfig($pageUid);
if (isset($pagesTsConfig['tx_news.']['templateLayouts.']) && is_array($pagesTsConfig['tx_news.']['templateLayouts.'])) {
$templateLayouts = $pagesTsConfig['tx_news.']['templateLayouts.'];
}
return $templateLayouts;
}
示例9: getTemplateLayoutsFromTsConfig
/**
* Get template layouts defined in TsConfig
*
* @param $pageUid
* @return array
*/
protected function getTemplateLayoutsFromTsConfig($pageUid)
{
$templateLayouts = array();
$pagesTsConfig = \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig($pageUid);
if (isset($pagesTsConfig['tx_jhmagnificpopup.']['mainClass.']) && is_array($pagesTsConfig['tx_jhmagnificpopup.']['mainClass.'])) {
$templateLayouts = $pagesTsConfig['tx_jhmagnificpopup.']['mainClass.'];
}
return $templateLayouts;
}
示例10: execute
public function execute()
{
$event = BackendUtility::getRecord('tx_cal_event', $this->uid);
$select = '*';
$table = 'tx_cal_fe_user_event_monitor_mm';
$where = 'schedulerId = ' . $this->getTaskUid();
$result = $GLOBALS['TYPO3_DB']->exec_SELECTquery($select, $table, $where);
$eventMonitor = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($result);
if (!is_array($event)) {
// the event could not be found, so we delete this reminder
$this->remove();
return true;
}
// ******************
// Constants defined
// ******************
define('PATH_thisScript', str_replace('//', '/', str_replace('\\', '/', (php_sapi_name() == 'cgi' || php_sapi_name() == 'isapi' || php_sapi_name() == 'cgi-fcgi') && ($_SERVER['ORIG_PATH_TRANSLATED'] ? $_SERVER['ORIG_PATH_TRANSLATED'] : $_SERVER['PATH_TRANSLATED']) ? $_SERVER['ORIG_PATH_TRANSLATED'] ? $_SERVER['ORIG_PATH_TRANSLATED'] : $_SERVER['PATH_TRANSLATED'] : ($_SERVER['ORIG_SCRIPT_FILENAME'] ? $_SERVER['ORIG_SCRIPT_FILENAME'] : $_SERVER['SCRIPT_FILENAME']))));
define('PATH_site', dirname(PATH_thisScript) . '/');
if (@is_dir(PATH_site . 'typo3/sysext/cms/tslib/')) {
define('PATH_tslib', PATH_site . 'typo3/sysext/cms/tslib/');
} elseif (@is_dir(PATH_site . 'tslib/')) {
define('PATH_tslib', PATH_site . 'tslib/');
} else {
// define path to tslib/ here:
$configured_tslib_path = '';
// example:
// $configured_tslib_path = '/var/www/mysite/typo3/sysext/cms/tslib/';
define('PATH_tslib', $configured_tslib_path);
}
if (PATH_tslib == '') {
die('Cannot find tslib/. Please set path by defining $configured_tslib_path in ' . basename(PATH_thisScript) . '.');
}
chdir(PATH_site);
/* Check Page TSConfig for a preview page that we should use */
$pageTSConf = BackendUtility::getPagesTSconfig($event['pid']);
if ($pageTSConf['options.']['tx_cal_controller.']['pageIDForPlugin']) {
$pageIDForPlugin = $pageTSConf['options.']['tx_cal_controller.']['pageIDForPlugin'];
} else {
$pageIDForPlugin = $event['pid'];
}
$page = BackendUtility::getRecord('pages', intval($pageIDForPlugin), "doktype");
if ($page['doktype'] != 254) {
/** @var \TYPO3\CMS\Cal\Controller\Api $calAPI */
$calAPI = GeneralUtility::makeInstance('TYPO3\\CMS\\Cal\\Controller\\Api');
$calAPI =& $calAPI->tx_cal_api_without($pageIDForPlugin);
$eventObject = $calAPI->modelObj->findEvent($event['uid'], 'tx_cal_phpicalendar', $calAPI->conf['pidList'], false, false, false, true);
$calAPI->conf['view'] = 'event';
$reminderService =& Functions::getReminderService();
$reminderService->remind($eventObject, $eventMonitor);
return true;
}
$message = 'Cal was not able to send a reminder notice. You have to point to a page containing the cal Plugin. Configure in pageTSConf of page ' . $event['pid'] . ': options.tx_cal_controller.pageIDForPlugin';
throw new FailedExecutionException($message, 1250596541);
}
示例11: addOptions
/**
* Add options to FlexForm Selection
*
* @param array $params
* @param string $type "type", "validation", "feUserProperty"
* @return void
*/
protected function addOptions(&$params, $type)
{
$typoScriptConfiguration = BackendUtility::getPagesTSconfig($params['row']['pid']);
$extensionConfiguration = $typoScriptConfiguration[$this->extension . '.']['flexForm.'];
if (!empty($extensionConfiguration[$type . '.']['addFieldOptions.'])) {
$options = $extensionConfiguration[$type . '.']['addFieldOptions.'];
foreach ((array) $options as $value => $label) {
$params['items'][] = array($label, $value);
}
}
}
示例12: addOptions
/**
* Add options to FlexForm Selection - Options can be defined in TSConfig
*
* @param array $params
* @return void
*/
public function addOptions(&$params)
{
$this->initialize();
$tSconfig = BackendUtility::getPagesTSconfig($this->getPid());
$this->addCaptchaOption($params);
if (!empty($tSconfig['tx_femanager.']['flexForm.'][$params['config']['itemsProcFuncTab'] . '.']['addFieldOptions.'])) {
$options = $tSconfig['tx_femanager.']['flexForm.'][$params['config']['itemsProcFuncTab'] . '.']['addFieldOptions.'];
foreach ((array) $options as $value => $label) {
$params['items'][] = array(GeneralUtility::isFirstPartOfStr($label, 'LLL:') ? $this->languageService->sL($label) : $label, $value);
}
}
}
示例13: getMergedConfiguration
protected function getMergedConfiguration($pid, $node, $cType)
{
// Get configuration ctype specific configuration
$cTypeConfig = $GLOBALS["BE_USER"]->getTSConfig('themes.content.' . $node . '.' . $cType, \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig($pid));
$this->ctypeProperties = $cTypeConfig['properties'];
// Get default configuration
$defaultConfig = $GLOBALS["BE_USER"]->getTSConfig('themes.content.' . $node . '.default', \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig($pid));
$this->defaultProperties = $defaultConfig['properties'];
// Merge configurations
$config = ArrayUtility::arrayMergeRecursiveOverrule($cTypeConfig, $defaultConfig);
return $config;
}
示例14: getSingleField_preProcess
/**
* Preprocessing of fields
*
* @param string $table table name
* @param string $field field name
* @param array $row record row
* @return void
*/
public function getSingleField_preProcess($table, $field, array &$row)
{
// Predefine the archive date
if ($table === 'tx_news_domain_model_news' && empty($row['archive']) && is_numeric($row['pid'])) {
$pagesTsConfig = \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig($row['pid']);
if (is_array($pagesTsConfig['tx_news.']['predefine.']) && is_array($pagesTsConfig['tx_news.']['predefine.']) && isset($pagesTsConfig['tx_news.']['predefine.']['archive'])) {
$calculatedTime = strtotime($pagesTsConfig['tx_news.']['predefine.']['archive']);
if ($calculatedTime !== FALSE) {
$row['archive'] = $calculatedTime;
}
}
}
}
示例15: getForms
/**
* Create Array for Form Selection
* Show all forms only from a pid and it's subpages:
* tx_powermail.flexForm.formSelection = 123
* Show all forms only from this pid and it's subpages:
* tx_powermail.flexForm.formSelection = current
* If no TSConfig set, all forms will be shown
*
* @param array $params
* @param object $pObj Parent Object
* @return void
*/
public function getForms(&$params, $pObj)
{
$typoScriptConfiguration = \TYPO3\CMS\Backend\Utility\BackendUtility::getPagesTSconfig(Div::getPidFromBackendPage());
$language = $params['row']['sys_language_uid'];
$startPid = 0;
if (!empty($typoScriptConfiguration['tx_powermail.']['flexForm.']['formSelection'])) {
$startPid = $typoScriptConfiguration['tx_powermail.']['flexForm.']['formSelection'];
}
$params['items'] = array();
foreach ($this->getAllForms($startPid, $language) as $form) {
$params['items'][] = array($form['title'], $form['uid']);
}
}