[TASK] Deprecate t3lib_ajax
authorChristian Kuhn <lolli@schwarzbu.ch>
Sun, 5 Aug 2012 12:14:04 +0000 (14:14 +0200)
committerHelmut Hummel <helmut.hummel@typo3.org>
Tue, 7 Aug 2012 08:41:37 +0000 (10:41 +0200)
Class t3lib_ajax is of little use and was never finished.
The only use in the core is adapted and the class deprecated.

Change-Id: I4b6f8d49f823ae01f1172a34de600c05312a51c8
Resolves: #39536
Releases: 6.0
Reviewed-on: http://review.typo3.org/13464
Reviewed-by: Wouter Wolters
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
t3lib/class.t3lib_ajax.php
typo3/alt_clickmenu.php

index c313e8a..a024323 100644 (file)
  *
  *  This copyright notice MUST APPEAR in all copies of the script!
  ***************************************************************/
+
 /**
- * Contains the class "t3lib_ajax" containing functions for doing XMLHTTP requests to the TYPO3 backend and as well for generating replys. This technology is also known as ajax.
+ * Contains the class "t3lib_ajax" containing functions for doing XMLHTTP requests
+ * to the TYPO3 backend and as well for generating replys. This technology is also known as ajax.
  * Call ALL methods without making an object!
  *
  * IMPORTANT NOTICE: The API the class provides is still NOT STABLE and SUBJECT TO CHANGE!
  * It is planned to integrate an external AJAX library, so the API will most likely change again.
  *
- * @author     Sebastian Kurfürst <sebastian@garbage-group.de>
- */
-
-/**
  * TYPO3 XMLHTTP class (new in TYPO3 4.0.0)
  * This class contains two main parts:
  * (1) generation of JavaScript code which creates an XMLHTTP object in a cross-browser manner
  * @author Sebastian Kurfürst <sebastian@garbage-group.de>
  * @package TYPO3
  * @subpackage t3lib
+ * @deprecated since 6.0, the class will be removed from core with 6.2
  */
 class t3lib_ajax {
 
        /**
+        * Default constructor writes deprecation log.
+        */
+       public function __construct() {
+               t3lib_div::deprecationLog(
+                       'Class t3lib_ajax is deprecated and unused since TYPO3 6.0. ' .
+                       'It will be removed with version 6.2.'
+               );
+       }
+
+       /**
         * Gets the JavaScript code needed to handle an XMLHTTP request in the frontend.
         * All JS functions have to call ajax_doRequest(url) to make a request to the server.
         * USE:
@@ -56,8 +65,11 @@ class t3lib_ajax {
         * @param string $fallback JS fallback function which is called with the URL of the request in case ajax is not available.
         * @param boolean $debug If set to 1, the returned XML data is outputted as text in an alert window - useful for debugging, PHP errors are shown there, ...
         * @return string JavaScript code needed to make and handle an XMLHTTP request
+        * @deprecated since 6.0, class will be removed with 6.2
         */
-       function getJScode($handlerFunction, $fallback = '', $debug = 0) {
+       public function getJScode($handlerFunction, $fallback = '', $debug = 0) {
+               t3lib_div::logDeprecatedFunction();
+
                        // Init the XMLHTTP request object
                $code = '
                function ajax_initObject() {
@@ -114,8 +126,11 @@ class t3lib_ajax {
         *
         * @param string $innerXML XML data which will be sent to the browser
         * @return void
+        * @deprecated since 6.0, class will be removed with 6.2
         */
-       function outputXMLreply($innerXML) {
+       public function outputXMLreply($innerXML) {
+               t3lib_div::logDeprecatedFunction();
+
                        // AJAX needs some XML data
                header('Content-Type: text/xml');
                $xml = '<?xml version="1.0"?>
index c8d1f6e..a855da8 100644 (file)
@@ -1744,7 +1744,8 @@ class SC_alt_clickmenu {
                        $this->content = $this->doc->insertStylesAndJS($this->content);
                        echo $this->content;
                } else {
-                       t3lib_ajax::outputXMLreply($this->content);
+                       header('Content-Type: text/xml');
+                       echo '<?xml version="1.0"?>' . LF . '<t3ajax>' . $this->content . '</t3ajax>';
                }
        }
 }