Fixed bug #986, thanks to Sebastian Kurfuerst.
[Packages/TYPO3.CMS.git] / typo3 / file_upload.php
index e4a2498..d2a243f 100755 (executable)
@@ -2,7 +2,7 @@
 /***************************************************************
 *  Copyright notice
 *
-*  (c) 1999-2004 Kasper Skaarhoj (kasper@typo3.com)
+*  (c) 1999-2005 Kasper Skaarhoj (kasperYYYY@typo3.com)
 *  All rights reserved
 *
 *  This script is part of the TYPO3 project. The TYPO3 project is
  * $Id$
  * Revised for TYPO3 3.6 November/2003 by Kasper Skaarhoj
  *
- * @author     Kasper Skaarhoj <kasper@typo3.com>
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
  */
 /**
  * [CLASS/FUNCTION INDEX of SCRIPT]
  *
  *
  *
- *   78: class SC_file_upload
+ *   77: class SC_file_upload
  *  103:     function init()
- *  161:     function main()
- *  230:     function printContent()
+ *  162:     function main()
+ *  235:     function printContent()
  *
  * TOTAL FUNCTIONS: 3
  * (This index is automatically created/updated by the extension "extdeveval")
 
 
 
-$BACK_PATH='';
-require ('init.php');
-require ('template.php');
-include ('sysext/lang/locallang_misc.php');
-require_once (PATH_t3lib.'class.t3lib_basicfilefunc.php');
-
+$BACK_PATH = '';
+require('init.php');
+require('template.php');
+$LANG->includeLLFile('EXT:lang/locallang_misc.xml');
+require_once(PATH_t3lib.'class.t3lib_basicfilefunc.php');
 
 
 
@@ -71,7 +70,7 @@ require_once (PATH_t3lib.'class.t3lib_basicfilefunc.php');
 /**
  * Script Class for display up to 10 upload fields
  *
- * @author     Kasper Skaarhoj <kasper@typo3.com>
+ * @author     Kasper Skaarhoj <kasperYYYY@typo3.com>
  * @package TYPO3
  * @subpackage core
  */
@@ -90,6 +89,7 @@ class SC_file_upload {
                // Internal, static (GPVar):
        var $number;
        var $target;            // Set with the target path inputted in &target
+       var $returnUrl;         // Return URL of list module.
 
                // Internal, dynamic:
        var $content;           // Accumulating content
@@ -106,6 +106,7 @@ class SC_file_upload {
                        // Initialize GPvars:
                $this->number = t3lib_div::_GP('number');
                $this->target = t3lib_div::_GP('target');
+               $this->returnUrl = t3lib_div::_GP('returnUrl');
 
                        // Init basic-file-functions object:
                $this->basicff = t3lib_div::makeInstance('t3lib_basicFileFunctions');
@@ -142,7 +143,7 @@ class SC_file_upload {
 
                        function reload(a)      {       //
                                if (!changed || (changed && confirm('.$LANG->JScharCode($LANG->sL('LLL:EXT:lang/locallang_core.php:mess.redraw')).')))  {
-                                       var params = "&target="+escape(path)+"&number="+a;
+                                       var params = "&target="+escape(path)+"&number="+a+"&returnUrl='.htmlspecialchars($this->returnUrl).'";
                                        document.location = "file_upload.php?"+params;
                                }
                        }
@@ -212,9 +213,13 @@ class SC_file_upload {
                        <div id="c-submit">
                                <input type="submit" value="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.submit',1).'" />
                                <input type="submit" value="'.$LANG->sL('LLL:EXT:lang/locallang_core.php:labels.cancel',1).'" onclick="backToList(); return false;" />
+                               <input type="hidden" name="redirect" value="'.htmlspecialchars($this->returnUrl).'" />
                        </div>
                ';
 
+                       // CSH:
+               $code.= t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'file_upload', $GLOBALS['BACK_PATH'],'<br/>');
+
                        // Add the HTML as a section:
                $this->content.= $this->doc->section('',$code);