[BUGFIX] Unset stdWrap of select.pidInList
[Packages/TYPO3.CMS.git] / typo3 / sysext / cms / tslib / class.tslib_eidtools.php
index 3bb9441..814b7f6 100644 (file)
@@ -2,7 +2,7 @@
 /***************************************************************
 *  Copyright notice
 *
-*  (c) 2006 Kasper Skaarhoj (kasperYYYY@typo3.com)
+*  (c) 2006-2011 Kasper Skårhøj (kasperYYYY@typo3.com)
 *  All rights reserved
 *
 *  This script is part of the TYPO3 project. The TYPO3 project is
  * initialize parts of the FE environment as needed,
  * eg. Frontend User session, Database connection etc.
  *
- * $Id$
- *
- * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
- */
-/**
- * [CLASS/FUNCTION INDEX of SCRIPT]
- *
- *   71: public static function initFeUser()
- *   98: public static function connectDB()
- *  117: public static function initLanguage($language = 'default')
- *  131: public static function initTCA()
- *  150: public static function initExtensionTCA($extensionKey)
- *  167: private static function getTSFE()
- *
- * TOTAL FUNCTIONS: 6
- * (This index is automatically created/updated by the extension "extdeveval")
- *
+ * @author     Kasper Skårhøj <kasperYYYY@typo3.com>
  */
 
 /**
  * Tools for scripts using the eID feature of index.php
  *
- * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
+ * @author     Kasper Skårhøj <kasperYYYY@typo3.com>
  * @author     Dmitry Dulepov <dmitry@typo3.org>
  * @package TYPO3
  * @subpackage tslib
@@ -79,10 +63,6 @@ final class tslib_eidtools {
                $tsfe = self::getTSFE();
                /* @var $tsfe tslib_fe */
 
-               // Include classes necessary for initializing frontend user
-               require_once(PATH_t3lib . 'class.t3lib_userauth.php');
-               require_once(PATH_tslib . 'class.tslib_feuserauth.php');
-
                $tsfe->initFEuser();
 
                // Return FE user object:
@@ -93,19 +73,16 @@ final class tslib_eidtools {
         * Connecting to database. If the function fails, last error message
         * can be retrieved using $GLOBALS['TYPO3_DB']->sql_error().
         *
-        * @return      boolean         true if connection was successful
+        * @return      boolean         TRUE if connection was successful
         */
        public static function connectDB()      {
-               static $dbConnected = false;
-
-               if (!$dbConnected) {
-                       // Attempt to connect to the database
-                       if ($GLOBALS['TYPO3_DB']->sql_pconnect(TYPO3_db_host, TYPO3_db_username, TYPO3_db_password) &&
-                                       $GLOBALS['TYPO3_DB']->sql_select_db(TYPO3_db)) {
-                               $dbConnected = true;
-                       }
+               if (!$GLOBALS['TYPO3_DB']->isConnected()) {
+                               // Attempt to connect to the database
+                       $GLOBALS['TYPO3_DB']->connectDB();
                }
-               return $dbConnected;
+                       // connectDB() throws exceptions if something went wrong,
+                       // so we are sure that connect was successful here.
+               return TRUE;
        }
 
        /**
@@ -116,8 +93,6 @@ final class tslib_eidtools {
         */
        public static function initLanguage($language = 'default') {
                if (!is_object($GLOBALS['LANG'])) {
-                       require_once(PATH_t3lib . 'class.t3lib_cs.php');
-                       require_once(t3lib_extMgm::extPath('lang', 'lang.php'));
                        $GLOBALS['LANG'] = t3lib_div::makeInstance('language');
                        $GLOBALS['LANG']->init($language);
                }
@@ -130,18 +105,18 @@ final class tslib_eidtools {
         */
        public static function initTCA() {
                // Some badly made extensions attempt to manipulate TCA in a wrong way
-               // (inside ext_localconf.php). Therefore $TCA may become an array
+               // (inside ext_localconf.php). Therefore $GLOBALS['TCA'] may become an array
                // but in fact it is not loaded. The check below ensure that
                // TCA is still loaded if such bad extensions are installed
                if (!is_array($GLOBALS['TCA']) || !isset($GLOBALS['TCA']['pages'])) {
                        // Load TCA using TSFE
-                       self::getTSFE()->includeTCA(false);
+                       self::getTSFE()->includeTCA(FALSE);
                }
        }
 
        /**
         * Makes TCA for the extension available inside eID. Use this function if
-        * you need not to include the whole $TCA. However, you still need to call
+        * you need not to include the whole $GLOBALS['TCA']. However, you still need to call
         * t3lib_div::loadTCA() if you want to access column array!
         *
         * @param       string          $extensionKey   Extension key
@@ -166,14 +141,10 @@ final class tslib_eidtools {
         */
        private static function getTSFE() {
                // Cached instance
-               static $tsfe = null;
+               static $tsfe = NULL;
 
                if (is_null($tsfe)) {
-                       require_once(PATH_tslib . 'class.tslib_fe.php');
-                       require_once(PATH_t3lib . 'class.t3lib_cs.php');
-
-                       $tsfeClassName = t3lib_div::makeInstanceClassName('tslib_fe');
-                       $tsfe = new $tsfeClassName($GLOBALS['TYPO3_CONF_VARS'], 0, 0);
+                       $tsfe = t3lib_div::makeInstance('tslib_fe', $GLOBALS['TYPO3_CONF_VARS'], 0, 0);
                }
 
                return $tsfe;