X-Git-Url: http://git.typo3.org/Packages/TYPO3.CMS.git/blobdiff_plain/dca0d260fdd9b8dd6fded57baebfd600519ffbfb..42387f9aeeac45843ac2766f2cb0293bbbc0fc86:/typo3/file_upload.php diff --git a/typo3/file_upload.php b/typo3/file_upload.php index d7edd29e791..d2a243fac4c 100755 --- a/typo3/file_upload.php +++ b/typo3/file_upload.php @@ -1,22 +1,22 @@ File: Upload of files * - * @author Kasper Skårhøj - * @package TYPO3 - * @subpackage core + * $Id$ + * Revised for TYPO3 3.6 November/2003 by Kasper Skaarhoj * + * @author Kasper Skaarhoj */ +/** + * [CLASS/FUNCTION INDEX of SCRIPT] + * + * + * + * 77: class SC_file_upload + * 103: function init() + * 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'); +$LANG->includeLLFile('EXT:lang/locallang_misc.xml'); +require_once(PATH_t3lib.'class.t3lib_basicfilefunc.php'); + -$BACK_PATH=""; -require ("init.php"); -require ("template.php"); -include ("sysext/lang/locallang_misc.php"); -require_once (PATH_t3lib."class.t3lib_basicfilefunc.php"); -// *************************** -// Script Classes -// *************************** + + + + + + + + +/** + * Script Class for display up to 10 upload fields + * + * @author Kasper Skaarhoj + * @package TYPO3 + * @subpackage core + */ class SC_file_upload { - var $content; - var $number; + + // External, static: var $uploadNumber=10; - var $basicff; - var $shortPath; - var $title; - var $icon; - var $target; - var $doc; - + // Internal, static: + var $doc; // Template object. + var $basicff; // Instance of "t3lib_basicFileFunctions" + var $icon; // Will be set to the proper icon for the $target value. + var $shortPath; // Relative path to current found filemount + var $title; // Name of the filemount + + // 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 + + + /** + * Constructor for initializing the class + * + * @return void + */ function init() { - global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$HTTP_GET_VARS,$HTTP_POST_VARS,$CLIENT,$TYPO3_CONF_VARS; + global $LANG,$BACK_PATH,$TYPO3_CONF_VARS; + + // 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'); + $this->basicff->init($GLOBALS['FILEMOUNTS'],$TYPO3_CONF_VARS['BE']['fileExtensions']); - $this->number = t3lib_div::GPvar("number"); - $this->target = t3lib_div::GPvar("target"); - $this->basicff = t3lib_div::makeInstance("t3lib_basicFileFunctions"); - $this->basicff->init($GLOBALS["FILEMOUNTS"],$TYPO3_CONF_VARS["BE"]["fileExtensions"]); - + // Cleaning and checking target $this->target=$this->basicff->is_directory($this->target); // Cleaning and checking target - $key=$this->basicff->checkPathAgainstMounts($this->target."/"); + $key=$this->basicff->checkPathAgainstMounts($this->target.'/'); if (!$this->target || !$key) { - t3lib_BEfunc::typo3PrintError ("Parameter Error","Target was not a directory!",""); + t3lib_BEfunc::typo3PrintError ('Parameter Error','Target was not a directory!',''); exit; } + // Finding the icon - switch($GLOBALS["FILEMOUNTS"][$key]["type"]) { - case "user": $this->icon = "gfx/i/_icon_ftp_user.gif"; break; - case "group": $this->icon = "gfx/i/_icon_ftp_group.gif"; break; - default: $this->icon = "gfx/i/_icon_ftp.gif"; break; + switch($GLOBALS['FILEMOUNTS'][$key]['type']) { + case 'user': $this->icon = 'gfx/i/_icon_ftp_user.gif'; break; + case 'group': $this->icon = 'gfx/i/_icon_ftp_group.gif'; break; + default: $this->icon = 'gfx/i/_icon_ftp.gif'; break; } - $this->shortPath = substr($this->target,strlen($GLOBALS["FILEMOUNTS"][$key]["path"])); - $this->title = $GLOBALS["FILEMOUNTS"][$key]["name"].": ".$this->shortPath; - - - - - // *************************** - // Setting template object - // *************************** - $this->doc = t3lib_div::makeInstance("smallDoc"); + + // Relative path to filemount, $key: + $this->shortPath = substr($this->target,strlen($GLOBALS['FILEMOUNTS'][$key]['path'])); + + // Setting title: + $this->title = $GLOBALS['FILEMOUNTS'][$key]['name'].': '.$this->shortPath; + + // Setting template object + $this->doc = t3lib_div::makeInstance('smallDoc'); + $this->doc->docType = 'xhtml_trans'; $this->doc->backPath = $BACK_PATH; - - $this->doc->JScode=' - - '; - $this->doc->form='
'; + '); } + + /** + * Main function, rendering the upload file form fields + * + * @return void + */ function main() { - global $BE_USER,$LANG,$BACK_PATH,$TCA_DESCR,$TCA,$HTTP_GET_VARS,$HTTP_POST_VARS,$CLIENT,$TYPO3_CONF_VARS; + global $LANG; - $this->content=""; - $this->content.=$this->doc->startPage($LANG->sL("LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle")); - $this->content.=$this->doc->header($LANG->sL("LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle")); + // Make page header: + $this->content=''; + $this->content.=$this->doc->startPage($LANG->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')); + $this->content.=$this->doc->header($LANG->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')); $this->content.=$this->doc->spacer(5); $this->content.=$this->doc->section('',$this->doc->getFileheader($this->title,$this->shortPath,$this->icon)); $this->content.=$this->doc->divider(5); - - - // making the selector box + + + // Making the selector box for the number of concurrent uploads $this->number = t3lib_div::intInRange($this->number,1,10); - $code=''; for ($a=1;$a<=$this->uploadNumber;$a++) { - $code.=''; + $code.=' + '; } - $code.='

'; - - $code.=' '.$LANG->getLL("overwriteExistingFiles")."
"; - + $code.=' + + + '; + + // Make checkbox for "overwrite" + $code.=' +
+ '.$LANG->getLL('overwriteExistingFiles',1).' +
+ '; + + // Produce the number of upload-fields needed: + $code.=' +
+ '; for ($a=0;$a<$this->number;$a++) { - $code.='formWidth(35).' onClick="changed=1;">
'; + // Adding 'size="50" ' for the sake of Mozilla! + $code.=' + doc->formWidth(35).' size="50" onclick="changed=1;" /> + +
+ '; } - $code.='
  '; - $this->content.= $this->doc->section("",$code); + $code.=' +
+ '; + + // Submit button: + $code.=' +
+ + + +
+ '; + + // CSH: + $code.= t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'file_upload', $GLOBALS['BACK_PATH'],'
'); + + // Add the HTML as a section: + $this->content.= $this->doc->section('',$code); + + // Ending page + $this->content.= $this->doc->endPage(); } + + /** + * Outputting the accumulated content to screen + * + * @return void + */ function printContent() { - global $SOBE; - $this->content.= $this->doc->spacer(10); - $this->content.= $this->doc->middle(); - $this->content.= $this->doc->endPage(); echo $this->content; } - - // *************************** - // OTHER FUNCTIONS: - // *************************** } // Include extension? -if (defined("TYPO3_MODE") && $TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["typo3/file_upload.php"]) { - include_once($TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["typo3/file_upload.php"]); +if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['typo3/file_upload.php']) { + include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['typo3/file_upload.php']); } @@ -165,7 +255,7 @@ if (defined("TYPO3_MODE") && $TYPO3_CONF_VARS[TYPO3_MODE]["XCLASS"]["typo3/file_ // Make instance: -$SOBE = t3lib_div::makeInstance("SC_file_upload"); +$SOBE = t3lib_div::makeInstance('SC_file_upload'); $SOBE->init(); $SOBE->main(); $SOBE->printContent();