ExtBase:
authorJochen Rau <j.rau@web.de>
Wed, 25 Mar 2009 01:21:18 +0000 (01:21 +0000)
committerJochen Rau <j.rau@web.de>
Wed, 25 Mar 2009 01:21:18 +0000 (01:21 +0000)
* Renamed $extensionKey to $extensionName to avoid confusion; the extensionName is always UpperCamelCase while the $extensionKey is lower_under_scored

15 files changed:
typo3/sysext/extbase/Classes/Configuration/Manager.php
typo3/sysext/extbase/Classes/Configuration/Source/FlexFormSource.php
typo3/sysext/extbase/Classes/Configuration/Source/PhpSource.php
typo3/sysext/extbase/Classes/Configuration/Source/TypoScriptSource.php
typo3/sysext/extbase/Classes/Configuration/SourceInterface.php
typo3/sysext/extbase/Classes/Controller/AbstractController.php
typo3/sysext/extbase/Classes/Controller/ActionController.php
typo3/sysext/extbase/Classes/Exception/InvalidExtensionName.php [new file with mode: 0644]
typo3/sysext/extbase/Classes/Exception/InvalidPackageKey.php [deleted file]
typo3/sysext/extbase/Classes/Request.php
typo3/sysext/extbase/Classes/View/Helper/LinkHelper.php
typo3/sysext/extbase/Classes/View/Helper/TranslateHelper.php
typo3/sysext/extbase/Classes/View/Helper/URIHelper.php
typo3/sysext/extbase/Classes/View/TemplateView.php
typo3/sysext/extbase/class.tx_extbase_dispatcher.php

index d4d1a56..c3a5dcf 100644 (file)
@@ -59,13 +59,13 @@ class Tx_ExtBase_Configuration_Manager implements t3lib_Singleton {
        /**
         * Returns an array with the settings defined for the specified extension.
         *
        /**
         * Returns an array with the settings defined for the specified extension.
         *
-        * @param string $extensionKey Key of the extension to return the settings for
+        * @param string $extensionName Key of the extension to return the settings for
         * @return array The settings of the specified extension
         */
         * @return array The settings of the specified extension
         */
-       public function getSettings($extensionKey, $controllerName = '', $actionName = '') {
+       public function getSettings($extensionName, $controllerName = '', $actionName = '') {
                $settings = array();
                $settings = array();
-               if (is_array($this->settings[$extensionKey])) {
-                       $settings = $this->settings[$extensionKey];
+               if (is_array($this->settings[$extensionName])) {
+                       $settings = $this->settings[$extensionName];
                        if (!empty($controllerName) && is_array($settings[$controllerName])) {
                                if (!empty($actionName) && is_array($settings[$controllerName][$actionName])) {
                                        $settings = $settings[$controllerName][$actionName];
                        if (!empty($controllerName) && is_array($settings[$controllerName])) {
                                if (!empty($actionName) && is_array($settings[$controllerName][$actionName])) {
                                        $settings = $settings[$controllerName][$actionName];
@@ -104,17 +104,17 @@ class Tx_ExtBase_Configuration_Manager implements t3lib_Singleton {
         * The result is stored in the configuration manager's settings registry
         * and can be retrieved with the getSettings() method.
         *
         * The result is stored in the configuration manager's settings registry
         * and can be retrieved with the getSettings() method.
         *
-        * @param string $extensionKey
+        * @param string $extensionName
         * @return void
         * @see getSettings()
         */
         * @return void
         * @see getSettings()
         */
-       public function loadGlobalSettings($extensionKey) {
-               $settings = $this->settings[$extensionKey];
+       public function loadGlobalSettings($extensionName) {
+               $settings = $this->settings[$extensionName];
                if (empty($settings)) $settings = array();
                foreach ($this->configurationSources as $configurationSource) {
                if (empty($settings)) $settings = array();
                foreach ($this->configurationSources as $configurationSource) {
-                       $settings = t3lib_div::array_merge_recursive_overrule($settings, $configurationSource->load($extensionKey));
+                       $settings = t3lib_div::array_merge_recursive_overrule($settings, $configurationSource->load($extensionName));
                }
                }
-               $this->settings[$extensionKey] = $settings;
+               $this->settings[$extensionName] = $settings;
        }
 
 }
        }
 
 }
index a53d6de..3def802 100644 (file)
@@ -53,10 +53,10 @@ class Tx_ExtBase_Configuration_Source_FlexFormSource implements Tx_ExtBase_Confi
         * configuration container. If the file does not exist or could not be loaded,
         * the empty configuration container is returned.
         *
         * configuration container. If the file does not exist or could not be loaded,
         * the empty configuration container is returned.
         *
-        * @param string $extensionKey The extension key
+        * @param string $extensionName The extension name
         * @return Tx_ExtBase_Configuration_Container
         */
         * @return Tx_ExtBase_Configuration_Container
         */
-        public function load($extensionKey) {
+        public function load($extensionName) {
                $settings = array();
                if (is_array($this->flexFormContent)) {
                        $flexFormArray = $this->flexFormContent;
                $settings = array();
                if (is_array($this->flexFormContent)) {
                        $flexFormArray = $this->flexFormContent;
index 63336e1..dd37996 100644 (file)
@@ -36,11 +36,11 @@ class Tx_ExtBase_Configuration_Source_PhpSource implements Tx_ExtBase_Configurat
         * array. If the file does not exist or could not be loaded, an empty
         * array is returned
         *
         * array. If the file does not exist or could not be loaded, an empty
         * array is returned
         *
-        * @param string $extensionKey The extension key
+        * @param string $extensionName The extension name
         * @return array
         */
         * @return array
         */
-       public function load($extensionKey) {
-               $pathAndFilename = t3lib_extMgm::extPath(strtolower($extensionKey)) . '/Configuration/Settings';
+       public function load($extensionName) {
+               $pathAndFilename = t3lib_extMgm::extPath(strtolower($extensionName)) . '/Configuration/Settings';
                $c = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Container');
                if (file_exists($pathAndFilename . '.php')) {
                        require ($pathAndFilename . '.php');
                $c = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Container');
                if (file_exists($pathAndFilename . '.php')) {
                        require ($pathAndFilename . '.php');
index eaf4433..266347a 100644 (file)
@@ -33,12 +33,12 @@ class Tx_ExtBase_Configuration_Source_TypoScriptSource implements Tx_ExtBase_Con
         * configuration container. If the file does not exist or could not be loaded,
         * the empty configuration container is returned.
         *
         * configuration container. If the file does not exist or could not be loaded,
         * the empty configuration container is returned.
         *
-        * @param string $extensionKey The extension key
+        * @param string $extensionName The extension name
         * @return array The settings as array without trailing dots
         */
         * @return array The settings as array without trailing dots
         */
-        public function load($extensionKey) {
-               // SK: same as with dispatcher. strtolower($extensionKey) is wrong; example: tt_news -> tx_ttnews
-               $settings = $GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_' . strtolower($extensionKey) . '.'];
+        public function load($extensionName) {
+               // SK: same as with dispatcher. strtolower($extensionName) is wrong; example: tt_news -> tx_ttnews
+               $settings = $GLOBALS['TSFE']->tmpl->setup['plugin.']['tx_' . strtolower($extensionName) . '.'];
                if (is_array($settings)) $settings = $this->postProcessSettings($settings);
                return $settings;
        }
                if (is_array($settings)) $settings = $this->postProcessSettings($settings);
                return $settings;
        }
index c9111cc..62e5684 100644 (file)
@@ -35,9 +35,9 @@ interface Tx_ExtBase_Configuration_SourceInterface {
         * Loads the specified configuration file and returns its content in a
         * configuration container
         *
         * Loads the specified configuration file and returns its content in a
         * configuration container
         *
-        * @param string $extensionKey The extension key
+        * @param string $extensionName The extension name
         * @return Tx_ExtBase_Configuration_Container
         */
         * @return Tx_ExtBase_Configuration_Container
         */
-       public function load($extensionKey);
+       public function load($extensionName);
 }
 ?>
\ No newline at end of file
 }
 ?>
\ No newline at end of file
index 4da80d0..d3523ee 100755 (executable)
@@ -34,7 +34,7 @@ abstract class Tx_ExtBase_Controller_AbstractController implements Tx_ExtBase_Co
        /**
         * @var string Key of the extension this controller belongs to
         */
        /**
         * @var string Key of the extension this controller belongs to
         */
-       protected $extensionKey;
+       protected $extensionName;
 
        /**
         * Contains the settings of the current extension
 
        /**
         * Contains the settings of the current extension
@@ -71,7 +71,7 @@ abstract class Tx_ExtBase_Controller_AbstractController implements Tx_ExtBase_Co
         * @param F3_FLOW3_Package_ManagerInterface $packageManager A reference to the Package Manager
         */
        public function __construct() {
         * @param F3_FLOW3_Package_ManagerInterface $packageManager A reference to the Package Manager
         */
        public function __construct() {
-               // SK: Set $this->extensionKey, could be done the same way as it is done in Fluid
+               // SK: Set $this->extensionName, could be done the same way as it is done in Fluid
                $this->arguments = t3lib_div::makeInstance('Tx_ExtBase_Controller_Arguments');
        }
 
                $this->arguments = t3lib_div::makeInstance('Tx_ExtBase_Controller_Arguments');
        }
 
@@ -119,11 +119,11 @@ abstract class Tx_ExtBase_Controller_AbstractController implements Tx_ExtBase_Co
         * @return void
         * @throws Tx_ExtBase_Exception_StopAction
         */
         * @return void
         * @throws Tx_ExtBase_Exception_StopAction
         */
-       public function forward($actionName, $controllerName = NULL, $extensionKey = NULL, Tx_ExtBase_Controller_Arguments $arguments = NULL) {
+       public function forward($actionName, $controllerName = NULL, $extensionName = NULL, Tx_ExtBase_Controller_Arguments $arguments = NULL) {
                $this->request->setDispatched(FALSE);
                $this->request->setControllerActionName($actionName);
                if ($controllerName !== NULL) $this->request->setControllerName($controllerName);
                $this->request->setDispatched(FALSE);
                $this->request->setControllerActionName($actionName);
                if ($controllerName !== NULL) $this->request->setControllerName($controllerName);
-               if ($extensionKey !== NULL) $this->request->setControllerExtensionKey($extensionKey);
+               if ($extensionName !== NULL) $this->request->setExtensionName($extensionName);
                if ($arguments !== NULL) $this->request->setArguments($arguments);
                throw new Tx_ExtBase_Exception_StopAction();
        }
                if ($arguments !== NULL) $this->request->setArguments($arguments);
                throw new Tx_ExtBase_Exception_StopAction();
        }
index aa985de..26e7729 100644 (file)
@@ -149,8 +149,8 @@ class Tx_ExtBase_Controller_ActionController extends Tx_ExtBase_Controller_Abstr
         */
        protected function resolveViewObjectName() {
                $possibleViewName = $this->viewObjectNamePattern;
         */
        protected function resolveViewObjectName() {
                $possibleViewName = $this->viewObjectNamePattern;
-               $extensionKey = $this->request->getControllerExtensionKey();
-               $possibleViewName = str_replace('@extension', $extensionKey, $possibleViewName);
+               $extensionName = $this->request->getExtensionName();
+               $possibleViewName = str_replace('@extension', $extensionName, $possibleViewName);
                $possibleViewName = str_replace('@controller', $this->request->getControllerName(), $possibleViewName);
                $possibleViewName = str_replace('@action', ucfirst($this->request->getControllerActionName()), $possibleViewName);
                return $possibleViewName;
                $possibleViewName = str_replace('@controller', $this->request->getControllerName(), $possibleViewName);
                $possibleViewName = str_replace('@action', ucfirst($this->request->getControllerActionName()), $possibleViewName);
                return $possibleViewName;
diff --git a/typo3/sysext/extbase/Classes/Exception/InvalidExtensionName.php b/typo3/sysext/extbase/Classes/Exception/InvalidExtensionName.php
new file mode 100644 (file)
index 0000000..f382112
--- /dev/null
@@ -0,0 +1,36 @@
+<?php
+/***************************************************************
+*  Copyright notice
+*
+*  (c) 2009 Jochen Rau <jochen.rau@typoplanet.de>
+*  All rights reserved
+*
+*  This script is part of the TYPO3 project. The TYPO3 project is
+*  free software; you can redistribute it and/or modify
+*  it under the terms of the GNU General Public License as published by
+*  the Free Software Foundation; either version 2 of the License, or
+*  (at your option) any later version.
+*
+*  The GNU General Public License can be found at
+*  http://www.gnu.org/copyleft/gpl.html.
+*
+*  This script is distributed in the hope that it will be useful,
+*  but WITHOUT ANY WARRANTY; without even the implied warranty of
+*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+*  GNU General Public License for more details.
+*
+*  This copyright notice MUST APPEAR in all copies of the script!
+***************************************************************/
+
+/**
+ * An "Invalid Extension Key" exception
+ *
+ * @package TYPO3
+ * @subpackage extbase
+ * @version $ID:$
+ */
+class InvalidExtensionKey extends Tx_ExtBase_Exception {
+
+}
+
+?>
\ No newline at end of file
diff --git a/typo3/sysext/extbase/Classes/Exception/InvalidPackageKey.php b/typo3/sysext/extbase/Classes/Exception/InvalidPackageKey.php
deleted file mode 100644 (file)
index f382112..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-/***************************************************************
-*  Copyright notice
-*
-*  (c) 2009 Jochen Rau <jochen.rau@typoplanet.de>
-*  All rights reserved
-*
-*  This script is part of the TYPO3 project. The TYPO3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-
-/**
- * An "Invalid Extension Key" exception
- *
- * @package TYPO3
- * @subpackage extbase
- * @version $ID:$
- */
-class InvalidExtensionKey extends Tx_ExtBase_Exception {
-
-}
-
-?>
\ No newline at end of file
index e35d65f..fa11cf2 100644 (file)
@@ -42,21 +42,17 @@ class Tx_ExtBase_Request {
        protected $controllerObjectNamePattern = 'Tx_@extension_Controller_@controllerController';
 
        /**
        protected $controllerObjectNamePattern = 'Tx_@extension_Controller_@controllerController';
 
        /**
-        * Pattern after which the view object name is built
-        *
-        * @var string
+        * @var string Pattern after which the view object name is built
         */
        protected $viewObjectNamePattern = 'Tx_@extension_View_@controller@action';
 
        /**
         */
        protected $viewObjectNamePattern = 'Tx_@extension_View_@controller@action';
 
        /**
-        * Extension key of the controller which is supposed to handle this request.
-        *
-        * @var string
+        * @var string Name of the extension which is supposed to handle this request. This is the extension name converted to UpperCamelCase
         */
         */
-       protected $controllerExtensionKey = 'ExtBase';
+       protected $extensionName = 'ExtBase';
 
        /**
 
        /**
-        * @var string Object name of the controller which is supposed to handle this request.
+        * @var string Name of the controller which is supposed to handle this request.
         */
        protected $controllerName = 'Default';
 
         */
        protected $controllerName = 'Default';
 
@@ -112,16 +108,17 @@ class Tx_ExtBase_Request {
        }
 
        /**
        }
 
        /**
-        * Returns the object name of the controller defined by the extension key and
+        * Returns the object name of the controller defined by the extension name and
         * controller name
         *
         * @return string The controller's Object Name
         * @throws Tx_ExtBase_Exception_NoSuchController if the controller does not exist
         */
        public function getControllerObjectName() {
         * controller name
         *
         * @return string The controller's Object Name
         * @throws Tx_ExtBase_Exception_NoSuchController if the controller does not exist
         */
        public function getControllerObjectName() {
-               $lowercaseObjectName = str_replace('@extension', $this->controllerExtensionKey, $this->controllerObjectNamePattern);
+               $lowercaseObjectName = str_replace('@extension', $this->extensionName, $this->controllerObjectNamePattern);
                $lowercaseObjectName = str_replace('@controller', $this->controllerName, $lowercaseObjectName);
                $lowercaseObjectName = str_replace('@controller', $this->controllerName, $lowercaseObjectName);
-               $objectName = $lowercaseObjectName; //$this->objectManager->getCaseSensitiveObjectName($lowercaseObjectName); // TODO implement getCaseSensitiveObjectName()
+               // TODO implement getCaseSensitiveObjectName()
+               $objectName = $lowercaseObjectName;
                if ($objectName === FALSE) throw new Tx_ExtBase_Exception_NoSuchController('The controller object "' . $lowercaseObjectName . '" does not exist.', 1220884009);
 
                return $objectName;
                if ($objectName === FALSE) throw new Tx_ExtBase_Exception_NoSuchController('The controller object "' . $lowercaseObjectName . '" does not exist.', 1220884009);
 
                return $objectName;
@@ -131,7 +128,7 @@ class Tx_ExtBase_Request {
         * Sets the pattern for building the controller object name.
         *
         * The pattern may contain the placeholders "@extension" and "@controller" which will be substituted
         * Sets the pattern for building the controller object name.
         *
         * The pattern may contain the placeholders "@extension" and "@controller" which will be substituted
-        * by the real extension key and controller name.
+        * by the real extension name and controller name.
         *
         * @param string $pattern The pattern
         * @return void
         *
         * @param string $pattern The pattern
         * @return void
@@ -179,7 +176,7 @@ class Tx_ExtBase_Request {
         */
        public function getViewObjectName() {
                $possibleViewName = $this->viewObjectNamePattern;
         */
        public function getViewObjectName() {
                $possibleViewName = $this->viewObjectNamePattern;
-               $possibleViewName = str_replace('@extension', $this->controllerExtensionKey, $possibleViewName);
+               $possibleViewName = str_replace('@extension', $this->extensionName, $possibleViewName);
                $possibleViewName = str_replace('@controller', $this->controllerName, $possibleViewName);
                $possibleViewName = str_replace('@action', ucfirst($this->controllerActionName), $possibleViewName);
 
                $possibleViewName = str_replace('@controller', $this->controllerName, $possibleViewName);
                $possibleViewName = str_replace('@action', ucfirst($this->controllerActionName), $possibleViewName);
 
@@ -192,25 +189,25 @@ class Tx_ExtBase_Request {
        }
 
        /**
        }
 
        /**
-        * Sets the extension key of the controller.
+        * Sets the extension name of the controller.
         *
         *
-        * @param string $extensionKey The extension key.
+        * @param string $extensionName The extension name.
         * @return void
         * @return void
-        * @throws Tx_ExtBase_Exception_InvalidExtensionKey if the extension key is not valid
+        * @throws Tx_ExtBase_Exception_InvalidExtensionName if the extension name is not valid
         */
         */
-       public function setControllerExtensionKey($extensionKey) {
-               $upperCamelCasedExtensionKey = $extensionKey; //$this->packageManager->getCaseSensitiveExtensionKey($extensionKey);  // TODO implement getCaseSensitiveExtensionKey()
-               if ($upperCamelCasedExtensionKey === FALSE) throw new Tx_ExtBase_Exception_InvalidExtensionKey('"' . $extensionKey . '" is not a valid extension key.', 1217961104);
-               $this->controllerExtensionKey = $upperCamelCasedExtensionKey;
+       public function setExtensionName($extensionName) {
+               $upperCamelCasedExtensionName = $extensionName; //$this->packageManager->getCaseSensitiveExtensionName($extensionName);  // TODO implement getCaseSensitiveExtensionName()
+               if ($upperCamelCasedExtensionName === FALSE) throw new Tx_ExtBase_Exception_InvalidExtensionName('"' . $extensionName . '" is not a valid extension name.', 1217961104);
+               $this->extensionName = $upperCamelCasedExtensionName;
        }
 
        /**
        }
 
        /**
-        * Returns the extension key of the specified controller.
+        * Returns the extension name of the specified controller.
         *
         *
-        * @return string The extension key
+        * @return string The extension name
         */
         */
-       public function getControllerExtensionKey() {
-               return $this->controllerExtensionKey;
+       public function getExtensionName() {
+               return $this->extensionName;
        }
 
        /**
        }
 
        /**
index 02991b0..298f31e 100644 (file)
@@ -61,7 +61,7 @@ class Tx_ExtBase_View_Helper_LinkHelper extends Tx_ExtBase_View_Helper_AbstractH
         */
        public function render($view, $arguments, $templateSource, $variables) {
                $parameters = t3lib_div::_GET();
         */
        public function render($view, $arguments, $templateSource, $variables) {
                $parameters = t3lib_div::_GET();
-               $prefixedExtensionKey = 'tx_' . strtolower($this->request->getControllerExtensionKey());
+               $prefixedExtensionKey = 'tx_' . strtolower($this->request->getExtensionName());
                if (!empty($arguments['to'])) {
                        $linkTo = $arguments['to'];
                        $view->replaceReferencesWithValues($linkTo, $variables);
                if (!empty($arguments['to'])) {
                        $linkTo = $arguments['to'];
                        $view->replaceReferencesWithValues($linkTo, $variables);
index 41f0e35..9f02826 100644 (file)
@@ -80,7 +80,7 @@ class Tx_ExtBase_View_Helper_TranslateHelper extends Tx_ExtBase_View_Helper_Abst
         * @return      void
         */
        protected function initializeLocalization($view)        {
         * @return      void
         */
        protected function initializeLocalization($view)        {
-               $languageFilePath = t3lib_extMgm::extPath(strtolower($this->request->getControllerExtensionKey())) . $this->languagePath . 'locallang.php';
+               $languageFilePath = t3lib_extMgm::extPath(strtolower($this->request->getExtensionName())) . $this->languagePath . 'locallang.php';
 
                if ($GLOBALS['TSFE']->config['config']['language'])     {
                        $this->languageKey = $GLOBALS['TSFE']->config['config']['language'];
 
                if ($GLOBALS['TSFE']->config['config']['language'])     {
                        $this->languageKey = $GLOBALS['TSFE']->config['config']['language'];
@@ -96,7 +96,7 @@ class Tx_ExtBase_View_Helper_TranslateHelper extends Tx_ExtBase_View_Helper_Abst
                }
 
                $configurationManager = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Manager');
                }
 
                $configurationManager = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Manager');
-               $settings = $configurationManager->getSettings($this->request->getControllerExtensionKey());
+               $settings = $configurationManager->getSettings($this->request->getExtensionName());
                if (is_array($settings['_LOCAL_LANG'])) {
                        foreach ($settings['_LOCAL_LANG'] as $k => $lA) {
                                if (is_array($lA)) {
                if (is_array($settings['_LOCAL_LANG'])) {
                        foreach ($settings['_LOCAL_LANG'] as $k => $lA) {
                                if (is_array($lA)) {
index b3aed41..cb11d88 100644 (file)
@@ -43,14 +43,14 @@ class Tx_ExtBase_View_Helper_URIHelper extends Tx_ExtBase_View_Helper_AbstractHe
         * @param string $actionName Name of the action to be called
         * @param array $arguments Additional arguments
         * @param string $controllerName Name of the target controller. If not set, current controller is used
         * @param string $actionName Name of the action to be called
         * @param array $arguments Additional arguments
         * @param string $controllerName Name of the target controller. If not set, current controller is used
-        * @param string $extensionKey Name of the target extension. If not set, current extension is used
-        * @param string $subextensionKey Name of the target subextension. If not set, current subextension is used
+        * @param string $extensionName Name of the target extension. If not set, current extension is used
+        * @param string $subextensionName Name of the target subextension. If not set, current subextension is used
         * @param array $options Further options
         * @return string the HTML code for the generated link
         * @see UIRFor()
         */
         * @param array $options Further options
         * @return string the HTML code for the generated link
         * @see UIRFor()
         */
-       public function linkTo($label, $actionName, $arguments = array(), $controllerName = NULL, $extensionKey = NULL) {
-               $link = '<a href="' . $this->URIFor($actionName, $arguments, $controllerName, $extensionKey) . '">' . htmlspecialchars($label) . '</a>';
+       public function linkTo($label, $actionName, $arguments = array(), $controllerName = NULL, $extensionName = NULL) {
+               $link = '<a href="' . $this->URIFor($actionName, $arguments, $controllerName, $extensionName) . '">' . htmlspecialchars($label) . '</a>';
                return $link;
        }
 
                return $link;
        }
 
@@ -60,15 +60,15 @@ class Tx_ExtBase_View_Helper_URIHelper extends Tx_ExtBase_View_Helper_AbstractHe
         * @param string $actionName Name of the action to be called
         * @param array $arguments Additional arguments
         * @param string $controllerName Name of the target controller. If not set, current controller is used
         * @param string $actionName Name of the action to be called
         * @param array $arguments Additional arguments
         * @param string $controllerName Name of the target controller. If not set, current controller is used
-        * @param string $extensionKey Name of the target extension. If not set, current extension is used
+        * @param string $extensionName Name of the target extension. If not set, current extension is used
         * @param array $options Further options
         * @return string the HTML code for the generated link
         */
         * @param array $options Further options
         * @return string the HTML code for the generated link
         */
-       public function URIFor($actionName, $arguments = array(), $controllerName = NULL, $extensionKey = NULL) {
+       public function URIFor($actionName, $arguments = array(), $controllerName = NULL, $extensionName = NULL) {
                $routeValues = $arguments;
                $routeValues['@action'] = $actionName;
                $routeValues['@controller'] = ($controllerName === NULL) ? $this->request->getControllerName() : $controllerName;
                $routeValues = $arguments;
                $routeValues['@action'] = $actionName;
                $routeValues['@controller'] = ($controllerName === NULL) ? $this->request->getControllerName() : $controllerName;
-               $routeValues['@extension'] = ($extensionKey === NULL) ? $this->request->getControllerExtensionKey() : $extensionKey;
+               $routeValues['@extension'] = ($extensionName === NULL) ? $this->request->getExtensionName() : $extensionName;
 
                $URIString = $this->router->resolve($routeValues);
                return $URIString;
 
                $URIString = $this->router->resolve($routeValues);
                return $URIString;
index f11556b..2a39fa2 100644 (file)
@@ -162,7 +162,7 @@ class Tx_ExtBase_View_TemplateView extends Tx_ExtBase_View_AbstractView {
         * @return string the contents of the template file
         */
        protected function loadTemplateFile($templateFilePath) {
         * @return string the contents of the template file
         */
        protected function loadTemplateFile($templateFilePath) {
-               $templateSource = file_get_contents(t3lib_extMgm::extPath(strtolower($this->request->getControllerExtensionKey())) . $templateFilePath, FILE_TEXT);
+               $templateSource = file_get_contents(t3lib_extMgm::extPath(strtolower($this->request->getExtensionName())) . $templateFilePath, FILE_TEXT);
                if (!$templateSource) throw new RuntimeException('The template file "' . $templateFilePath . '" was not found.', 1225709595);
                return $templateSource;
        }
                if (!$templateSource) throw new RuntimeException('The template file "' . $templateFilePath . '" was not found.', 1225709595);
                return $templateSource;
        }
index 1aff429..324fa96 100644 (file)
@@ -78,7 +78,7 @@ class Tx_ExtBase_Dispatcher {
         */
        public function dispatch($content, $configuration) {
                $parameters = t3lib_div::_GET();
         */
        public function dispatch($content, $configuration) {
                $parameters = t3lib_div::_GET();
-               $extensionKey = $configuration['extension'];
+               $extensionName = $configuration['extension'];
                $controllerName = $configuration['controller'];
                $allowedActions = t3lib_div::trimExplode(',', $configuration['allowedActions']);
                if (isset($parameters['action']) && in_array($parameters['action'], $allowedActions)) {
                $controllerName = $configuration['controller'];
                $allowedActions = t3lib_div::trimExplode(',', $configuration['allowedActions']);
                if (isset($parameters['action']) && in_array($parameters['action'], $allowedActions)) {
@@ -86,11 +86,11 @@ class Tx_ExtBase_Dispatcher {
                } else {
                        $actionName = $configuration['action'];
                }
                } else {
                        $actionName = $configuration['action'];
                }
-               if (empty($extensionKey) || empty($controllerName) || empty($allowedActions)) {
+               if (empty($extensionName) || empty($controllerName) || empty($allowedActions)) {
                        throw new Exception('Could not dispatch the request. Please configure your plugin in the TS Setup.', 1237879677);
                }
 
                        throw new Exception('Could not dispatch the request. Please configure your plugin in the TS Setup.', 1237879677);
                }
 
-               $request = $this->buildRequest($extensionKey, $controllerName, $actionName);
+               $request = $this->buildRequest($extensionName, $controllerName, $actionName);
                $controller = t3lib_div::makeInstance($request->getControllerObjectName());
                if (!$controller instanceof Tx_ExtBase_Controller_ControllerInterface) {
                        throw new Tx_ExtBase_Exception_InvalidController('Invalid controller "' . $request->getControllerObjectName() . '". The controller must be a valid request handling controller.', 1202921619);
                $controller = t3lib_div::makeInstance($request->getControllerObjectName());
                if (!$controller instanceof Tx_ExtBase_Controller_ControllerInterface) {
                        throw new Tx_ExtBase_Exception_InvalidController('Invalid controller "' . $request->getControllerObjectName() . '". The controller must be a valid request handling controller.', 1202921619);
@@ -104,14 +104,14 @@ class Tx_ExtBase_Dispatcher {
                }
 
                $arguments = t3lib_div::makeInstance('Tx_ExtBase_Controller_Arguments');
                }
 
                $arguments = t3lib_div::makeInstance('Tx_ExtBase_Controller_Arguments');
-               // SK: strtolower($extensionKey) is wrong I think, as all underscores need to be removed as well.
+               // SK: strtolower($extensionName) is wrong I think, as all underscores need to be removed as well.
                // SK: Example: tt_news -> tx_ttnews
                // SK: Example: tt_news -> tx_ttnews
-               foreach (t3lib_div::GParrayMerged('tx_' . strtolower($extensionKey)) as $key => $value) {
+               foreach (t3lib_div::GParrayMerged('tx_' . strtolower($extensionName)) as $key => $value) {
                        $request->setArgument($key, $value);
                }
 
                $response = t3lib_div::makeInstance('Tx_ExtBase_Web_Response');
                        $request->setArgument($key, $value);
                }
 
                $response = t3lib_div::makeInstance('Tx_ExtBase_Web_Response');
-               $controller->injectSettings($this->getSettings($extensionKey));
+               $controller->injectSettings($this->getSettings($extensionName));
 
                $persistenceSession = t3lib_div::makeInstance('Tx_ExtBase_Persistence_Session');
                try {
 
                $persistenceSession = t3lib_div::makeInstance('Tx_ExtBase_Persistence_Session');
                try {
@@ -123,14 +123,14 @@ class Tx_ExtBase_Dispatcher {
                $persistenceSession->clear();
                
                if (count($response->getAdditionalHeaderData()) > 0) {
                $persistenceSession->clear();
                
                if (count($response->getAdditionalHeaderData()) > 0) {
-                       $GLOBALS['TSFE']->additionalHeaderData[$request->getControllerExtensionKey()] = implode("\n", $response->getAdditionalHeaderData());
+                       $GLOBALS['TSFE']->additionalHeaderData[$request->getExtensionName()] = implode("\n", $response->getAdditionalHeaderData());
                }
                // TODO Handle $response->getStatus()
                // SK: Call sendHeaders() on the response
                return $response->getContent();
        }
        
                }
                // TODO Handle $response->getStatus()
                // SK: Call sendHeaders() on the response
                return $response->getContent();
        }
        
-       protected function getSettings($extensionKey) {
+       protected function getSettings($extensionName) {
                $configurationSources = array();
                $configurationSources[] = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Source_TypoScriptSource');
                if (!empty($this->cObj->data['pi_flexform'])) {
                $configurationSources = array();
                $configurationSources[] = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Source_TypoScriptSource');
                if (!empty($this->cObj->data['pi_flexform'])) {
@@ -139,13 +139,13 @@ class Tx_ExtBase_Dispatcher {
                        $configurationSources[] = $configurationSource;
                }
                $configurationManager = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Manager', $configurationSources);
                        $configurationSources[] = $configurationSource;
                }
                $configurationManager = t3lib_div::makeInstance('Tx_ExtBase_Configuration_Manager', $configurationSources);
-               $configurationManager->loadGlobalSettings($extensionKey);
-               return $configurationManager->getSettings($extensionKey);
+               $configurationManager->loadGlobalSettings($extensionName);
+               return $configurationManager->getSettings($extensionName);
        }
        
        }
        
-       protected function buildRequest($extensionKey, $controllerName, $actionName) {
+       protected function buildRequest($extensionName, $controllerName, $actionName) {
                $request = t3lib_div::makeInstance('Tx_ExtBase_Web_Request');
                $request = t3lib_div::makeInstance('Tx_ExtBase_Web_Request');
-               $request->setControllerExtensionKey($extensionKey);
+               $request->setExtensionName($extensionName);
                $request->setControllerName($controllerName);
                $request->setControllerActionName($actionName);
                $request->setRequestURI(t3lib_div::getIndpEnv('TYPO3_REQUEST_URL'));
                $request->setControllerName($controllerName);
                $request->setControllerActionName($actionName);
                $request->setRequestURI(t3lib_div::getIndpEnv('TYPO3_REQUEST_URL'));