PageRenderTime 1175ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 0ms

/typo3/sysext/rtehtmlarea/mod4/select_image.php

https://github.com/andreaswolf/typo3-tceforms
PHP | 117 lines | 55 code | 7 blank | 55 comment | 9 complexity | 787a6b1ff42fee449da98b128bf32ab9 MD5 | raw file
Possible License(s): Apache-2.0, BSD-2-Clause, LGPL-3.0
  1. <?php
  2. /***************************************************************
  3. * Copyright notice
  4. *
  5. * (c) 1999-2011 Kasper Skårhøj (kasper@typo3.com)
  6. * (c) 2004-2011 Stanislas Rolland <typo3(arobas)jbr.ca>
  7. * All rights reserved
  8. *
  9. * This script is part of the TYPO3 project. The TYPO3 project is
  10. * free software; you can redistribute it and/or modify
  11. * it under the terms of the GNU General Public License as published by
  12. * the Free Software Foundation; either version 2 of the License, or
  13. * (at your option) any later version.
  14. *
  15. * The GNU General Public License can be found at
  16. * http://www.gnu.org/copyleft/gpl.html.
  17. * A copy is found in the textfile GPL.txt and important notices to the license
  18. * from the author is found in LICENSE.txt distributed with these scripts.
  19. *
  20. *
  21. * This script is distributed in the hope that it will be useful,
  22. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  23. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  24. * GNU General Public License for more details.
  25. *
  26. * This copyright notice MUST APPEAR in all copies of the script!
  27. ***************************************************************/
  28. /**
  29. * Displays image selector for the RTE
  30. *
  31. * @author Kasper Skårhøj <kasper@typo3.com>
  32. * @author Stanislas Rolland <typo3(arobas)jbr.ca>
  33. *
  34. * $Id$ *
  35. */
  36. error_reporting (E_ALL ^ E_NOTICE);
  37. unset($MCONF);
  38. require('conf.php');
  39. require($BACK_PATH.'init.php');
  40. require($BACK_PATH.'template.php');
  41. $LANG->includeLLFile('EXT:lang/locallang_browse_links.xml');
  42. $LANG->includeLLFile('EXT:rtehtmlarea/mod4/locallang.xml');
  43. $LANG->includeLLFile('EXT:rtehtmlarea/htmlarea/locallang_dialogs.xml');
  44. /**
  45. * Script class for the Element Browser window.
  46. *
  47. * @author Kasper Skårhøj <kasperYYYY@typo3.com>
  48. * @package TYPO3
  49. * @subpackage core
  50. */
  51. class tx_rtehtmlarea_SC_select_image {
  52. public $mode = 'rte';
  53. public $button = 'image';
  54. protected $content = '';
  55. /**
  56. * Main function, rendering the element browser in RTE mode.
  57. *
  58. * @return void
  59. */
  60. function main() {
  61. // Setting alternative browsing mounts (ONLY local to browse_links.php this script so they stay "read-only")
  62. $altMountPoints = trim($GLOBALS['BE_USER']->getTSConfigVal('options.folderTree.altElementBrowserMountPoints'));
  63. if ($altMountPoints) {
  64. $altMountPoints = t3lib_div::trimExplode(',', $altMountPoints);
  65. foreach ($altMountPoints as $filePathRelativeToFileadmindir) {
  66. $GLOBALS['BE_USER']->addFileMount('', $filePathRelativeToFileadmindir, $filePathRelativeToFileadmindir, 1, 'readonly');
  67. }
  68. $GLOBALS['FILEMOUNTS'] = $GLOBALS['BE_USER']->returnFilemounts();
  69. }
  70. // Rendering type by user function
  71. $browserRendered = false;
  72. if (is_array($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/browse_links.php']['browserRendering'])) {
  73. foreach ($GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['typo3/browse_links.php']['browserRendering'] as $classRef) {
  74. $browserRenderObj = t3lib_div::getUserObj($classRef);
  75. if (is_object($browserRenderObj) && method_exists($browserRenderObj, 'isValid') && method_exists($browserRenderObj, 'render')) {
  76. if ($browserRenderObj->isValid($this->mode, $this)) {
  77. $this->content .= $browserRenderObj->render($this->mode, $this);
  78. $browserRendered = true;
  79. break;
  80. }
  81. }
  82. }
  83. }
  84. // If type was not rendered, use default rendering functions
  85. if (!$browserRendered) {
  86. $GLOBALS['SOBE']->browser = t3lib_div::makeInstance('tx_rtehtmlarea_select_image');
  87. $GLOBALS['SOBE']->browser->init();
  88. $modData = $GLOBALS['BE_USER']->getModuleData('select_image.php','ses');
  89. list($modData, $store) = $GLOBALS['SOBE']->browser->processSessionData($modData);
  90. $GLOBALS['BE_USER']->pushModuleData('select_image.php',$modData);
  91. $this->content = $GLOBALS['SOBE']->browser->main_rte();
  92. }
  93. }
  94. /**
  95. * Print module content
  96. *
  97. * @return void
  98. */
  99. function printContent() {
  100. echo $this->content;
  101. }
  102. }
  103. if (defined('TYPO3_MODE') && isset($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLASS']['ext/rtehtmlarea/mod4/select_image.php'])) {
  104. include_once($GLOBALS['TYPO3_CONF_VARS'][TYPO3_MODE]['XCLASS']['ext/rtehtmlarea/mod4/select_image.php']);
  105. }
  106. // Make instance:
  107. $SOBE = t3lib_div::makeInstance('tx_rtehtmlarea_SC_select_image');
  108. $SOBE->main();
  109. $SOBE->printContent();
  110. ?>