コード例 #1
0
 /**
  * Load ext_tables and friends.
  *
  * This will mainly set up $TCA and several other global arrays
  * through API's like extMgm.
  * Executes ext_tables.php files of loaded extensions or the
  * according cache file if exists.
  *
  * @param bool $allowCaching True, if reading compiled ext_tables file from cache is allowed
  * @return Bootstrap
  * @internal This is not a public API method, do not use in own extensions
  */
 public function loadExtensionTables($allowCaching = true)
 {
     ExtensionManagementUtility::loadBaseTca($allowCaching);
     ExtensionManagementUtility::loadExtTables($allowCaching);
     $this->runExtTablesPostProcessingHooks();
     return $this;
 }
コード例 #2
0
 /**
  * @test
  */
 public function loadExtTablesRequiresCacheFileIfExistsAndCachingIsAllowed()
 {
     $mockCache = $this->getMock(AbstractFrontend::class, array('getIdentifier', 'set', 'get', 'getByTag', 'has', 'remove', 'flush', 'flushByTag', 'requireOnce'), array(), '', FALSE);
     /** @var CacheManager|\PHPUnit_Framework_MockObject_MockObject $mockCacheManager */
     $mockCacheManager = $this->getMock(CacheManager::class, array('getCache'));
     $mockCacheManager->expects($this->any())->method('getCache')->will($this->returnValue($mockCache));
     ExtensionManagementUtilityAccessibleProxy::setCacheManager($mockCacheManager);
     $mockCache->expects($this->any())->method('has')->will($this->returnValue(TRUE));
     $mockCache->expects($this->once())->method('requireOnce');
     // Reset the internal cache access tracking variable of extMgm
     // This method is only in the ProxyClass!
     ExtensionManagementUtilityAccessibleProxy::resetExtTablesWasReadFromCacheOnceBoolean();
     ExtensionManagementUtility::loadExtTables(TRUE);
 }
コード例 #3
0
ファイル: Bootstrap.php プロジェクト: samuweiss/TYPO3-Site
 /**
  * Load ext_tables and friends.
  *
  * This will mainly set up $TCA and several other global arrays
  * through API's like extMgm.
  * Executes ext_tables.php files of loaded extensions or the
  * according cache file if exists.
  *
  * @param boolean $allowCaching True, if reading compiled ext_tables file from cache is allowed
  * @return Bootstrap
  * @internal This is not a public API method, do not use in own extensions
  */
 public function loadExtensionTables($allowCaching = TRUE)
 {
     Utility\ExtensionManagementUtility::loadBaseTca($allowCaching);
     Utility\ExtensionManagementUtility::loadExtTables($allowCaching);
     $this->executeExtTablesAdditionalFile();
     $this->runExtTablesPostProcessingHooks();
     return $this;
 }
コード例 #4
0
ファイル: Bootstrap.php プロジェクト: nicksergio/TYPO3v4-Core
 /**
  * Load ext_tables and friends.
  *
  * This will mainly set up $TCA and several other global arrays
  * through API's like extMgm.
  * Executes ext_tables.php files of loaded extensions or the
  * according cache file if exists.
  *
  * Note: For backwards compatibility some global variables are
  * explicitly set as global to be used without $GLOBALS[] in
  * ext_tables.php. It is discouraged to access variables like
  * $TBE_MODULES directly in ext_tables.php, but we can not prohibit
  * this without heavily breaking backwards compatibility.
  *
  * @TODO : We could write a scheduler / reports module or an update checker
  * @TODO : It should be defined, which global arrays are ok to be manipulated
  * @param boolean $allowCaching True, if reading compiled ext_tables file from cache is allowed
  * @return \TYPO3\CMS\Core\Core\Bootstrap
  * @internal This is not a public API method, do not use in own extensions
  */
 public function loadExtensionTables($allowCaching = TRUE)
 {
     // It is discouraged to use those global variables directly, but we
     // can not prohibit this without breaking backwards compatibility
     global $T3_SERVICES, $T3_VAR, $TYPO3_CONF_VARS;
     global $TBE_MODULES, $TBE_MODULES_EXT, $TCA;
     global $PAGES_TYPES, $TBE_STYLES, $FILEICONS;
     global $_EXTKEY;
     // Include standard tables.php file
     require PATH_t3lib . 'stddb/tables.php';
     \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::loadExtTables($allowCaching);
     // Load additional ext tables script if registered
     if (TYPO3_extTableDef_script) {
         include PATH_typo3conf . TYPO3_extTableDef_script;
     }
     // Run post hook for additional manipulation
     $this->runExtTablesPostProcessingHooks();
     return $this;
 }
コード例 #5
0
 /**
  * @test
  */
 public function loadExtTablesRequiresCacheFileIfExistsAndCachingIsAllowed()
 {
     $mockCache = $this->getMock('TYPO3\\CMS\\Core\\Cache\\Frontend\\AbstractFrontend', array('getIdentifier', 'set', 'get', 'getByTag', 'has', 'remove', 'flush', 'flushByTag', 'requireOnce'), array(), '', FALSE);
     $GLOBALS['typo3CacheManager'] = $this->getMock('TYPO3\\CMS\\Core\\Cache\\CacheManager', array('getCache'));
     $GLOBALS['typo3CacheManager']->expects($this->any())->method('getCache')->will($this->returnValue($mockCache));
     $mockCache->expects($this->any())->method('has')->will($this->returnValue(TRUE));
     $mockCache->expects($this->once())->method('requireOnce');
     // Reset the internal cache access tracking variable of extMgm
     // This method is only in the ProxyClass!
     \TYPO3\CMS\Core\Utility\ExtensionManagementUtilityAccessibleProxy::resetExtTablesWasReadFromCacheOnceBoolean();
     \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::loadExtTables(TRUE);
 }