/** * Main function, rendering the upload file form fields * * @return void * @todo Define visibility */ public function main() { // Make page header: $this->content = $this->doc->startPage($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')); $form = $this->renderUploadForm(); $pageContent = $this->doc->header($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_upload.php.pagetitle')) . $this->doc->section('', $form); // Header Buttons $docHeaderButtons = array('csh' => \TYPO3\CMS\Backend\Utility\BackendUtility::cshItem('xMOD_csh_corebe', 'file_upload', $GLOBALS['BACK_PATH'])); $markerArray = array('CSH' => $docHeaderButtons['csh'], 'FUNC_MENU' => \TYPO3\CMS\Backend\Utility\BackendUtility::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); }
/** * Main function, rendering the content of the rename form * * @return void * @todo Define visibility */ public function main() { //TODO: change locallang*.php to locallang*.xml // Make page header: $this->content = $this->doc->startPage($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_rename.php.pagetitle')); $pageContent = $this->doc->header($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_rename.php.pagetitle')); $pageContent .= $this->doc->spacer(5); $pageContent .= $this->doc->divider(5); if ($this->fileOrFolderObject instanceof \TYPO3\CMS\Core\Resource\Folder) { $fileIdentifier = $this->fileOrFolderObject->getCombinedIdentifier(); } else { $fileIdentifier = $this->fileOrFolderObject->getUid(); } $code = '<form action="tce_file.php" method="post" name="editform">'; // Making the formfields for renaming: $code .= ' <div id="c-rename"> <input type="text" name="file[rename][0][target]" value="' . htmlspecialchars($this->fileOrFolderObject->getName()) . '"' . $GLOBALS['TBE_TEMPLATE']->formWidth(40) . ' /> <input type="hidden" name="file[rename][0][data]" value="' . htmlspecialchars($fileIdentifier) . '" /> </div> '; // Making submit button: $code .= ' <div id="c-submit"> <input type="submit" value="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_rename.php.submit', 1) . '" /> <input type="submit" value="' . $GLOBALS['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> '; $code .= '</form>'; // Add the HTML as a section: $pageContent .= $code; $docHeaderButtons = array(); $docHeaderButtons['csh'] = \TYPO3\CMS\Backend\Utility\BackendUtility::cshItem('xMOD_csh_corebe', 'file_rename', $GLOBALS['BACK_PATH']); // Add the HTML as a section: $markerArray = array('CSH' => $docHeaderButtons['csh'], 'FUNC_MENU' => \TYPO3\CMS\Backend\Utility\BackendUtility::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); }
/** * Main function, rendering the main module content * * @return void * @todo Define visibility */ public function main() { // Start content compilation $this->content .= $this->doc->startPage($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_newfolder.php.pagetitle')); // Make page header: $pageContent = ''; $pageContent .= $this->doc->header($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_newfolder.php.pagetitle')); $pageContent .= $this->doc->spacer(5); $pageContent .= $this->doc->divider(5); $code = '<form action="tce_file.php" method="post" name="editform">'; // Making the selector box for the number of concurrent folder-creations $this->number = \TYPO3\CMS\Core\Utility\MathUtility::forceIntegerInRange($this->number, 1, 10); $code .= ' <div id="c-select"> <label for="number-of-new-folders">' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_newfolder.php.number_of_folders') . '</label> <select name="number" id="number-of-new-folders" onchange="reload(this.options[this.selectedIndex].value);">'; for ($a = 1; $a <= $this->folderNumber; $a++) { $code .= '<option value="' . $a . '"' . ($this->number == $a ? ' selected="selected"' : '') . '>' . $a . '</option>'; } $code .= ' </select> </div> '; // Making the number of new-folder boxes needed: $code .= ' <div id="c-createFolders"> '; for ($a = 0; $a < $this->number; $a++) { $code .= ' <input' . $this->doc->formWidth(20) . ' type="text" name="file[newfolder][' . $a . '][data]" onchange="changed=true;" /> <input type="hidden" name="file[newfolder][' . $a . '][target]" value="' . htmlspecialchars($this->target) . '" /><br /> '; } $code .= ' </div> '; // Making submit button for folder creation: $code .= ' <div id="c-submitFolders"> <input type="submit" value="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_newfolder.php.submit', 1) . '" /> <input type="submit" value="' . $GLOBALS['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 .= \TYPO3\CMS\Backend\Utility\BackendUtility::cshItem('xMOD_csh_corebe', 'file_newfolder', $GLOBALS['BACK_PATH'], '<br />'); $pageContent .= $code; // Add spacer: $pageContent .= $this->doc->spacer(10); // Switching form tags: $pageContent .= $this->doc->sectionEnd(); $pageContent .= '</form><form action="tce_file.php" method="post" name="editform2">'; // Create a list of allowed file extensions with the nice format "*.jpg, *.gif" etc. $fileExtList = array(); $textfileExt = \TYPO3\CMS\Core\Utility\GeneralUtility::trimExplode(',', $GLOBALS['TYPO3_CONF_VARS']['SYS']['textfile_ext'], TRUE); foreach ($textfileExt as $fileExt) { if (!preg_match('/' . $GLOBALS['TYPO3_CONF_VARS']['BE']['fileDenyPattern'] . '/i', '.' . $fileExt)) { $fileExtList[] = '*.' . $fileExt; } } // Add form fields for creation of a new, blank text file: $code = ' <div id="c-newFile"> <p>[' . htmlspecialchars(implode(', ', $fileExtList)) . ']</p> <input' . $this->doc->formWidth(20) . ' type="text" name="file[newfile][0][data]" onchange="changed=true;" /> <input type="hidden" name="file[newfile][0][target]" value="' . htmlspecialchars($this->target) . '" /> </div> '; // Submit button for creation of a new file: $code .= ' <div id="c-submitFiles"> <input type="submit" value="' . $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_newfolder.php.newfile_submit', 1) . '" /> <input type="submit" value="' . $GLOBALS['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 .= \TYPO3\CMS\Backend\Utility\BackendUtility::cshItem('xMOD_csh_corebe', 'file_newfile', $GLOBALS['BACK_PATH'], '<br />'); $pageContent .= $this->doc->section($GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:file_newfolder.php.newfile'), $code); $pageContent .= $this->doc->sectionEnd(); $pageContent .= '</form>'; $docHeaderButtons = array(); // Add the HTML as a section: $markerArray = array('CSH' => $docHeaderButtons['csh'], 'FUNC_MENU' => \TYPO3\CMS\Backend\Utility\BackendUtility::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); }
/** * Initialises the Class * * @return void * @todo Define visibility */ public function init() { // Setting GET vars (used in frameset script): $this->P = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('P', 1); // Setting GET vars (used in colorpicker script): $this->colorValue = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('colorValue'); $this->fieldChangeFunc = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('fieldChangeFunc'); $this->fieldChangeFuncHash = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('fieldChangeFuncHash'); $this->fieldName = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('fieldName'); $this->formName = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('formName'); $this->md5ID = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('md5ID'); $this->exampleImg = \TYPO3\CMS\Core\Utility\GeneralUtility::_GP('exampleImg'); // Resolving image (checking existence etc.) $this->imageError = ''; if ($this->exampleImg) { $this->pickerImage = \TYPO3\CMS\Core\Utility\GeneralUtility::getFileAbsFileName($this->exampleImg, 1, 1); if (!$this->pickerImage || !@is_file($this->pickerImage)) { $this->imageError = 'ERROR: The image, "' . $this->exampleImg . '", could not be found!'; } } // Setting field-change functions: $fieldChangeFuncArr = unserialize($this->fieldChangeFunc); $update = ''; if ($this->areFieldChangeFunctionsValid()) { unset($fieldChangeFuncArr['alert']); foreach ($fieldChangeFuncArr as $v) { $update .= ' parent.opener.' . $v; } } // Initialize document object: $this->doc = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Backend\\Template\\SmallDocumentTemplate'); $this->doc->backPath = $GLOBALS['BACK_PATH']; $this->doc->JScode = $this->doc->wrapScriptTags(' function checkReference() { // if (parent.opener && parent.opener.document && parent.opener.document.' . $this->formName . ' && parent.opener.document.' . $this->formName . '["' . $this->fieldName . '"]) { return parent.opener.document.' . $this->formName . '["' . $this->fieldName . '"]; } else { close(); } } function changeBGcolor(color) { // Changes the color in the table sample back in the TCEform. if (parent.opener.document.layers) { parent.opener.document.layers["' . $this->md5ID . '"].bgColor = color; } else if (parent.opener.document.all) { parent.opener.document.all["' . $this->md5ID . '"].style.background = color; } else if (parent.opener.document.getElementById && parent.opener.document.getElementById("' . $this->md5ID . '")) { parent.opener.document.getElementById("' . $this->md5ID . '").bgColor = color; } } function setValue(input) { // var field = checkReference(); if (field) { field.value = input; ' . $update . ' changeBGcolor(input); } } function getValue() { // var field = checkReference(); return field.value; } '); // Start page: $this->content .= $this->doc->startPage($GLOBALS['LANG']->getLL('colorpicker_title')); }