Exemplo n.º 1
0
 /**
  * Returns the fields configuration of a given page.
  *
  * @param	$pageUid	int		The id of the page you want the fields of.
  * @return	array				The fields configuration.
  */
 private static function getFieldsConfiguration($pageUid)
 {
     if (!isset(self::$fieldsConfiguration[$pageUid])) {
         self::$fieldsConfiguration[$pageUid] = Core::sortArrayByPositionValue(TypoScriptUtility::getExtensionConfigurationFromPath('fields', $pageUid));
     }
     return self::$fieldsConfiguration[$pageUid];
 }
 /**
  * This function will, at its first call, process a clean of the process
  * configuration.
  * The configuration will be stored in cache to increase performances for
  * future calls.
  *
  * @param $pageUid						int		The uid of the page where to get the configuration.
  * @param $onlyUsedInSiteModification	bool	Set to true if you only want the configuration which will be used during a modification, not a creation.
  * @return array The cleaned configuration.
  */
 public static function getCleanedDuplicationConfiguration($pageUid, $onlyUsedInSiteModification = false)
 {
     // As the result stored in cache may differ with $onlyUsedInSiteModification, we need to store the data in a different cache file.
     $siteModificationToken = $onlyUsedInSiteModification ? '1' : '0';
     if (!self::$duplicationConfiguration[$pageUid][$siteModificationToken]) {
         $duplicationConfiguration = Core::sortArrayByPositionValue(TypoScriptUtility::getExtensionConfigurationFromPath('duplication', $pageUid));
         $cleanedDuplicationConfiguration = array();
         // For HTML convention causes, we replace the lower-camel-case indexes with lower-case-underscored ones.
         foreach ($duplicationConfiguration as $key => $configuration) {
             if ($onlyUsedInSiteModification) {
                 if (!$configuration['usedInSiteModification']) {
                     continue;
                 }
             }
             $newKey = GeneralUtility::camelCaseToLowerCaseUnderscored($key);
             $newKey = str_replace('_', '-', $newKey);
             $cleanedDuplicationConfiguration[$newKey] = $configuration;
         }
         self::$duplicationConfiguration[$pageUid][$siteModificationToken] = $cleanedDuplicationConfiguration;
     }
     return self::$duplicationConfiguration[$pageUid][$siteModificationToken];
 }