Project

General

Profile

Bug #19490 » rtehtmlarea_bugfix_9613_trunk_v3.patch

Administrator Admin, 2008-10-23 17:46

View differences:

t3lib/class.t3lib_tceforms.php (copie de travail)
);
}
}
/**
* Insert additional style sheet link
*
* @param string $key: some key identifying the style sheet
* @param string $href: uri to the style sheet file
* @param string $title: value for the title attribute of the link element
* @return string $relation: value for the rel attribute of the link element
* @return void
*/
public function addStyleSheet($key, $href, $title='', $relation='stylesheet') {
$GLOBALS['SOBE']->doc->addStyleSheet($key, $href, $title, $relation);
}
}
......
$GLOBALS['TSFE']->additionalHeaderData[$lib] = '<script type="text/javascript" src="' . $this->backPath . $lib . '"></script>';
}
}
/**
* Insert additional style sheet link
*
* @param string $key: some key identifying the style sheet
* @param string $href: uri to the style sheet file
* @param string $title: value for the title attribute of the link element
* @return string $relation: value for the rel attribute of the link element
* @return void
*/
public function addStyleSheet($key, $href, $title='', $relation='stylesheet') {
if (!isset($GLOBALS['TSFE']->additionalHeaderData[$key])) {
$GLOBALS['TSFE']->additionalHeaderData[$key] = '<link rel="' . $relation . '" type="text/css" href="' . $href . '"' . ($title ? (' title="' . $title . '"') : '') . ' />';
}
}
}
if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['t3lib/class.t3lib_tceforms.php']) {
typo3/sysext/rtehtmlarea/class.tx_rtehtmlarea_base.php (copie de travail)
* LOAD CSS AND JAVASCRIPT
* =======================================
*/
// Preloading the pageStyle
$GLOBALS['SOBE']->doc->JScodeLibArray['rtehtmlarea-contentCSS'] = $this->getPageStyle();
// Including RTE skin stylesheets
$GLOBALS['SOBE']->doc->JScodeLibArray['rtehtmlarea-skin'] = $this->getSkin();
// Preloading the pageStyle and including RTE skin stylesheets
$this->addPageStyle();
$this->addSkin();
// Loading JavaScript files and code
$this->TCEform->additionalCode_pre['rtehtmlarea-loadJSfiles'] = $this->loadJSfiles($this->TCEform->RTEcounter);
$this->TCEform->additionalJS_pre['rtehtmlarea-loadJScode'] = $this->loadJScode($this->TCEform->RTEcounter);
......
}
/**
* Get links to content style sheet(s)
* Add link to content style sheet to document header
*
* @return string link tag referenceing the content stylesheet
* @return void
*/
protected function getPageStyle() {
protected function addPageStyle() {
// Get stylesheet file name from Page TSConfig if any
$filename = trim($this->thisConfig['contentCSS']) ? trim($this->thisConfig['contentCSS']) : 'EXT:' . $this->ID . '/res/contentcss/default.css';
return '<link rel="alternate stylesheet" type="text/css" href="' . $this->getFullFileName($filename) . '" title="HTMLArea RTE Content CSS" />';
$this->addStyleSheet(
'rtehtmlarea-page-style',
$this->getFullFileName($filename),
'htmlArea RTE Content CSS',
'alternate stylesheet'
);
}
/**
* Get links to skin style sheet(s)
* Add links to skin style sheet(s) to document header
*
* @return string link tags referenceing the skin stylesheets
* @return void
*/
protected function getSkin() {
protected function addSkin() {
// Get skin file name from Page TSConfig if any
$skinFilename = trim($this->thisConfig['skin']) ? trim($this->thisConfig['skin']) : 'EXT:' . $this->ID . '/htmlarea/skins/default/htmlarea.css';
if($this->client['BROWSER'] == 'gecko' && $this->client['VERSION'] == '1.3' && substr($skinFilename,0,4) == 'EXT:') {
......
$this->editorCSS = $skinFilename;
// Editing area style sheet
$this->editedContentCSS = $skinDir . '/htmlarea-edited-content.css';
$skin = '<link rel="alternate stylesheet" type="text/css" href="' . $this->editedContentCSS . '" title="HTMLArea RTE Editing Area CSS" />';
$this->addStyleSheet(
'rtehtmlarea-editing-area-skin',
$this->editedContentCSS,
'htmlArea RTE Editing Area Skin',
'alternate stylesheet'
);
// Main skin
$skin .= '
<link rel="stylesheet" type="text/css" href="' . $this->editorCSS . '" title="HTMLArea RTE Skin" />';
$this->addStyleSheet(
'rtehtmlarea-skin',
$this->editorCSS,
'htmlArea RTE Skin'
);
// Additional icons from registered plugins
foreach ($this->pluginEnabledCumulativeArray[$this->TCEform->RTEcounter] as $pluginId) {
if (is_object($this->registeredPlugins[$pluginId])) {
$pathToSkin = $this->registeredPlugins[$pluginId]->getPathToSkin();
if ($pathToSkin) {
$skin .= '
<link rel="stylesheet" type="text/css" href="' . $this->httpTypo3Path . t3lib_extMgm::siteRelPath($this->registeredPlugins[$pluginId]->getExtensionKey()) . $pathToSkin . '" />';
$this->addStyleSheet(
'rtehtmlarea-plugin-' . $pluginId . '-skin',
$this->httpTypo3Path . t3lib_extMgm::siteRelPath($this->registeredPlugins[$pluginId]->getExtensionKey()) . $pathToSkin,
'htmlArea RTE ' . $pluginId . ' Skin'
);
}
}
}
return $skin;
}
/**
* Add style sheet file to document header
*
* @param string $key: some key identifying the style sheet
* @param string $href: uri to the style sheet file
* @param string $title: value for the title attribute of the link element
* @return string $relation: value for the rel attribute of the link element
* @return void
*/
protected function addStyleSheet($key, $href, $title='', $relation='stylesheet') {
$this->TCEform->addStyleSheet($key, $href, $title, $relation);
}
/**
* Initialize toolbar configuration and enable registered plugins
*
* @return void
typo3/sysext/rtehtmlarea/pi2/class.tx_rtehtmlarea_pi2.php (copie de travail)
* LOAD JS, CSS and more
* =======================================
*/
// Preloading the pageStyle
$GLOBALS['TSFE']->additionalHeaderData['rtehtmlarea-contentCSS'] = $this->getPageStyle();
// Loading RTE skin style sheets
$GLOBALS['TSFE']->additionalHeaderData['rtehtmlarea-skin'] = $this->getSkin();
// Preloading the pageStyle and including RTE skin stylesheets
$this->addPageStyle();
$this->addSkin();
// Loading JavaScript files and code
$this->TCEform->additionalJS_initial = $this->loadJSfiles($this->TCEform->RTEcounter);
$this->TCEform->additionalJS_pre['rtehtmlarea-loadJScode'] = $this->loadJScode($this->TCEform->RTEcounter);
......
}
/**
* Add style sheet file to document header
*
* @param string $key: some key identifying the style sheet
* @param string $href: uri to the style sheet file
* @param string $title: value for the title attribute of the link element
* @return string $relation: value for the rel attribute of the link element
* @return void
*/
protected function addStyleSheet($key, $href, $title='', $relation='stylesheet') {
if (!isset($GLOBALS['TSFE']->additionalHeaderData[$key])) {
$GLOBALS['TSFE']->additionalHeaderData[$key] = '<link rel="' . $relation . '" type="text/css" href="' . $href . '"' . ($title ? (' title="' . $title . '"') : '') . ' />';
}
}
/**
* Return the JS-Code for copy the HTML-Code from the editor in the hidden input field.
* This is for submit function from the form.
*
typo3/template.php (copie de travail)
var $form_rowsToStylewidth = 9.58; // Multiplication factor for formWidth() input size (default is 48* this value).
var $form_largeComp = 1.33; // Compensation for large documents (used in class.t3lib_tceforms.php)
var $endJS=1; // If set, then a JavaScript section will be outputted in the bottom of page which will try and update the top.busy session expiry object.
protected $additionalStyleSheets=array(); // Links to additional style sheets
// TYPO3 Colorscheme.
// If you want to change this, please do so through a skin using the global var $TBE_STYLES
......
/*###POSTCSSMARKER###*/
/*]]>*/
</style>
'.($this->styleSheetFile_post?'<link rel="stylesheet" type="text/css" href="'.$this->backPath.$this->styleSheetFile_post.'" />':'')
'.($this->styleSheetFile_post?'<link rel="stylesheet" type="text/css" href="'.$this->backPath.$this->styleSheetFile_post.'" />':'').'
'.implode("\n", $this->additionalStyleSheets)
)
;
$this->inDocStyles='';
......
}
/**
* Insert additional style sheet link
*
* @param string $key: some key identifying the style sheet
* @param string $href: uri to the style sheet file
* @param string $title: value for the title attribute of the link element
* @return string $relation: value for the rel attribute of the link element
* @return void
*/
function addStyleSheet($key, $href, $title='', $relation='stylesheet') {
if (!isset($this->additionalStyleSheets[$key])) {
$this->additionalStyleSheets[$key] = '<link rel="' . $relation . '" type="text/css" href="' . $href . '"' . ($title ? (' title="' . $title . '"') : '') . ' />';
}
}
/**
* Insert post rendering document style into already rendered content
* This is needed for extobjbase
*
(3-3/3)