Index: typo3/tce_file.php =================================================================== --- typo3/tce_file.php (Revision 4877) +++ typo3/tce_file.php (Arbeitskopie) @@ -52,21 +52,13 @@ * */ -require ('init.php'); -require ('template.php'); -require_once (PATH_t3lib.'class.t3lib_basicfilefunc.php'); -require_once (PATH_t3lib.'class.t3lib_extfilefunc.php'); +require('init.php'); +require('template.php'); +require_once(PATH_t3lib . 'class.t3lib_basicfilefunc.php'); +require_once(PATH_t3lib . 'class.t3lib_extfilefunc.php'); - - - - - - - - /** * Script Class, handling the calling of methods in the file admin classes. * @@ -84,7 +76,7 @@ var $vC; // VeriCode - a hash of server specific value and other things which identifies if a submission is OK. (see $BE_USER->veriCode()) // Internal, dynamic: - var $include_once=array(); // Used to set the classes to include after the init() function is called. + var $include_once = array(); // Used to set the classes to include after the init() function is called. var $fileProcessor; // File processor object @@ -94,8 +86,7 @@ * * @return void */ - function init() { - + function init() { // GPvars: $this->file = t3lib_div::_GP('file'); $this->redirect = t3lib_div::_GP('redirect'); @@ -104,8 +95,8 @@ $this->vC = t3lib_div::_GP('vC'); // If clipboard is set, then include the clipboard class: - if (is_array($this->CB)) { - $this->include_once[] = PATH_t3lib.'class.t3lib_clipboard.php'; + if (is_array($this->CB)) { + $this->include_once[] = PATH_t3lib . 'class.t3lib_clipboard.php'; } } @@ -114,15 +105,15 @@ * * @return void */ - function initClipboard() { - if (is_array($this->CB)) { + function initClipboard() { + if (is_array($this->CB)) { $clipObj = t3lib_div::makeInstance('t3lib_clipboard'); $clipObj->initializeClipboard(); - if ($this->CB['paste']) { + if ($this->CB['paste']) { $clipObj->setCurrentPad($this->CB['pad']); - $this->file = $clipObj->makePasteCmdArray_file($this->CB['paste'],$this->file); + $this->file = $clipObj->makePasteCmdArray_file($this->CB['paste'], $this->file); } - if ($this->CB['delete']) { + if ($this->CB['delete']) { $clipObj->setCurrentPad($this->CB['pad']); $this->file = $clipObj->makeDeleteCmdArray_file($this->file); } @@ -135,20 +126,20 @@ * * @return void */ - function main() { + function main() { global $FILEMOUNTS,$TYPO3_CONF_VARS,$BE_USER; // Initializing: $this->fileProcessor = t3lib_div::makeInstance('t3lib_extFileFunctions'); - $this->fileProcessor->init($FILEMOUNTS, $TYPO3_CONF_VARS['BE']['fileExtensions']); + $this->fileProcessor->init($GLOBALS['FILEMOUNTS'], $GLOBALS['TYPO3_CONF_VARS']['BE']['fileExtensions']); $this->fileProcessor->init_actionPerms($GLOBALS['BE_USER']->getFileoperationPermissions()); $this->fileProcessor->dontCheckForUnique = $this->overwriteExistingFiles ? 1 : 0; // Checking referer / executing: $refInfo = parse_url(t3lib_div::getIndpEnv('HTTP_REFERER')); $httpHost = t3lib_div::getIndpEnv('TYPO3_HOST_ONLY'); - if ($httpHost!=$refInfo['host'] && $this->vC!=$BE_USER->veriCode() && !$TYPO3_CONF_VARS['SYS']['doNotCheckReferer']) { - $this->fileProcessor->writeLog(0,2,1,'Referer host "%s" and server host "%s" did not match!',array($refInfo['host'],$httpHost)); + if ($httpHost != $refInfo['host'] && $this->vC != $GLOBALS['BE_USER']->veriCode() && !$GLOBALS['TYPO3_CONF_VARS']['SYS']['doNotCheckReferer']) { + $this->fileProcessor->writeLog(0, 2, 1, 'Referer host "%s" and server host "%s" did not match!', array($refInfo['host'], $httpHost)); } else { $this->fileProcessor->start($this->file); $this->fileProcessor->processData(); @@ -161,7 +152,7 @@ * * @return void */ - function finish() { + function finish() { // Prints errors, if... $this->fileProcessor->printLogErrorMessages($this->redirect); @@ -173,7 +164,7 @@ } -if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['typo3/tce_file.php']) { +if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['typo3/tce_file.php']) { include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['typo3/tce_file.php']); } @@ -184,7 +175,9 @@ $SOBE->init(); // Include files? -foreach($SOBE->include_once as $INC_FILE) include_once($INC_FILE); +foreach ($SOBE->include_once as $INC_FILE) { + include_once($INC_FILE); +} $SOBE->initClipboard(); $SOBE->main(); Index: typo3/file_upload.php =================================================================== --- typo3/file_upload.php (Revision 4877) +++ typo3/file_upload.php (Arbeitskopie) @@ -47,14 +47,12 @@ * */ - - $BACK_PATH = ''; require('init.php'); require('template.php'); $LANG->includeLLFile('EXT:lang/locallang_misc.xml'); -require_once(PATH_t3lib.'class.t3lib_basicfilefunc.php'); -require_once(PATH_t3lib.'class.t3lib_parsehtml.php'); +require_once(PATH_t3lib . 'class.t3lib_basicfilefunc.php'); +require_once(PATH_t3lib . 'class.t3lib_parsehtml.php'); @@ -62,11 +60,6 @@ - - - - - /** * Script Class for display up to 10 upload fields * @@ -77,7 +70,7 @@ class SC_file_upload { // External, static: - var $uploadNumber=10; + var $uploadNumber = 10; // Internal, static: /** @@ -118,24 +111,22 @@ * * @return void */ - function init() { - global $LANG,$BACK_PATH,$TYPO3_CONF_VARS; - + function init() { // Initialize GPvars: $this->number = t3lib_div::_GP('number'); $this->target = t3lib_div::_GP('target'); $this->returnUrl = t3lib_div::_GP('returnUrl'); - $this->returnUrl = $this->returnUrl ? $this->returnUrl : t3lib_div::getIndpEnv('TYPO3_SITE_URL').TYPO3_mainDir.'file_list.php?id='.rawurlencode($this->target); + $this->returnUrl = $this->returnUrl ? $this->returnUrl : t3lib_div::getIndpEnv('TYPO3_SITE_URL') . TYPO3_mainDir . 'file_list.php?id=' . rawurlencode($this->target); - if (empty($this->number)) { - $defaultFileUploads = $GLOBALS['BE_USER']->getTSConfigVal('options.defaultFileUploads'); - if ($defaultFileUploads) { - $this->number = t3lib_div::intInRange($defaultFileUploads,1,$this->uploadNumber); - } + // set the number of input fields + if (empty($this->number)) { + $this->number = $GLOBALS['BE_USER']->getTSConfigVal('options.defaultFileUploads'); } + $this->number = t3lib_div::intInRange($this->number, 1, $this->uploadNumber); + // Init basic-file-functions object: $this->basicff = t3lib_div::makeInstance('t3lib_basicFileFunctions'); - $this->basicff->init($GLOBALS['FILEMOUNTS'],$TYPO3_CONF_VARS['BE']['fileExtensions']); + $this->basicff->init($GLOBALS['FILEMOUNTS'], $GLOBALS['TYPO3_CONF_VARS']['BE']['fileExtensions']); // Init basic-charset-functions object: $this->charsetConversion = t3lib_div::makeInstance('t3lib_cs'); @@ -143,164 +134,178 @@ // Cleaning and checking target $this->target = $this->charsetConversion->conv($this->target, 'utf-8', $GLOBALS['LANG']->charSet); $this->target = $this->basicff->is_directory($this->target); - $key=$this->basicff->checkPathAgainstMounts($this->target.'/'); - if (!$this->target || !$key) { - t3lib_BEfunc::typo3PrintError ($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_mod_file_list.xml:paramError', true), $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_mod_file_list.xml:targetNoDir', true), ''); + $key = $this->basicff->checkPathAgainstMounts($this->target . '/'); + if (!$this->target || !$key) { + t3lib_BEfunc::typo3PrintError($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_mod_file_list.xml:paramError', true), $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_mod_file_list.xml:targetNoDir', true), ''); 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->icon = 'backPath,$this->icon,'width="18" height="16"').' title="" alt="" />'; + $this->icon = 'icon, 'width="18" height="16"') . ' title="" alt="" />'; // Relative path to filemount, $key: - $this->shortPath = substr($this->target,strlen($GLOBALS['FILEMOUNTS'][$key]['path'])); + $this->shortPath = substr($this->target, strlen($GLOBALS['FILEMOUNTS'][$key]['path'])); // Setting title: - $this->title = $this->icon.$GLOBALS['FILEMOUNTS'][$key]['name'].': '.$this->shortPath; + $this->title = $this->icon . $GLOBALS['FILEMOUNTS'][$key]['name'] . ': ' . $this->shortPath; // Setting template object $this->doc = t3lib_div::makeInstance('template'); $this->doc->setModuleTemplate('templates/file_upload.html'); - $this->doc->backPath = $BACK_PATH; + $this->doc->backPath = $GLOBALS['BACK_PATH']; + $this->doc->form = '
'; - if($GLOBALS['BE_USER']->jsConfirmation(1)) { - $confirm = ' && confirm('.$LANG->JScharCode($LANG->sL('LLL:EXT:lang/locallang_core.php:mess.redraw')).')'; + if($GLOBALS['BE_USER']->jsConfirmation(1)) { + $confirm = ' && confirm(' . $GLOBALS['LANG']->JScharCode($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:mess.redraw')) . ')'; } else { $confirm = ''; } - $this->doc->JScode=$this->doc->wrapScriptTags(' + $this->doc->JScode = $this->doc->wrapScriptTags(' var path = "'.$this->target.'"; - function reload(a) { // - if (!changed || (changed '.$confirm.')) { + function reload(a) { // + if (!changed || (changed ' . $confirm . ')) { var params = "&target="+encodeURIComponent(path)+"&number="+a+"&returnUrl=' . urlencode($this->charsetConversion->conv($this->returnUrl, $GLOBALS['LANG']->charSet, 'utf-8')) . '"; window.location.href = "file_upload.php?"+params; } } - function backToList() { // + function backToList() { // top.goToModule("file_list"); } var changed = 0; '); } + /** * Main function, rendering the upload file form fields * * @return void */ - function main() { - global $LANG; - + function main() { // Make page header: - $this->content = $this->doc->startPage($LANG->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')); + $this->content = $this->doc->startPage($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')); - $pageContent.=$this->doc->header($LANG->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')); - $pageContent.=$this->doc->spacer(5); - $pageContent.=$this->doc->divider(5); + $form = $this->renderUploadForm(); + $pageContent = + $this->doc->header($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')) . + $this->doc->section('', $form); - $code = ''; - // Making the selector box for the number of concurrent uploads - $this->number = t3lib_div::intInRange($this->number,1,10); - $code .= ' + + // Header Buttons + $docHeaderButtons = array( + 'csh' => t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'file_upload', $GLOBALS['BACK_PATH']) + ); + + $markerArray = array( + 'CSH' => $docHeaderButtons['csh'], + 'FUNC_MENU' => t3lib_BEfunc::getFuncMenu($this->id, 'SET[function]', $this->MOD_SETTINGS['function'], $this->MOD_MENU['function']), + 'CONTENT' => $pageContent, + 'PATH' => $this->title, + ); + + $this->content .= $this->doc->moduleBody(array(), $docHeaderButtons, $markerArray); + $this->content .= $this->doc->endPage(); + $this->content = $this->doc->insertStylesAndJS($this->content); + } + + + /** + * This function renders the upload form + * + * @return string the HTML form as a string, ready for outputting + */ + function renderUploadForm() { + $content = '
'; + // Make checkbox for "overwrite" - $code.=' + $content .= '
- +
'; + // Produce the number of upload-fields needed: - $code.=' + $content .= '
'; - for ($a=0;$a<$this->number;$a++) { + for ($a = 0; $a < $this->number; $a++) { // Adding 'size="50" ' for the sake of Mozilla! - $code.=' - doc->formWidth(35).' size="50" onclick="changed=1;" /> - -
+ $content .= ' + doc->formWidth(35) . ' size="50" onclick="changed=1;" /> + +
'; } - $code.=' + $content .= '
'; // Submit button: - $code.=' + $content .= '
- - - + + +
'; - // Add the HTML as a section: - $pageContent.= $this->doc->section('',$code); + return $content; + } - // Header Buttons - $docHeaderButtons = array( - 'csh' => t3lib_BEfunc::cshItem('xMOD_csh_corebe', 'file_upload', $GLOBALS['BACK_PATH']) - ); - - $markerArray = array( - 'CSH' => $docHeaderButtons['csh'], - 'FUNC_MENU' => t3lib_BEfunc::getFuncMenu($this->id, 'SET[function]', $this->MOD_SETTINGS['function'], $this->MOD_MENU['function']), - 'CONTENT' => $pageContent, - 'PATH' => $this->title, - ); - - $this->content.= $this->doc->moduleBody(array(), $docHeaderButtons, $markerArray); - $this->content.= $this->doc->endPage(); - $this->content = $this->doc->insertStylesAndJS($this->content); - } - /** * Outputting the accumulated content to screen * * @return void */ - function printContent() { + function printContent() { echo $this->content; } } -if (defined('TYPO3_MODE') && $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']); } - // Make instance: $SOBE = t3lib_div::makeInstance('SC_file_upload'); $SOBE->init(); $SOBE->main(); $SOBE->printContent(); -?> +?> \ No newline at end of file