Feature #16864

Function pi_wrapInBaseClass in tslib/class.tslib_pibase.php

Added by Thomas Janke almost 13 years ago. Updated about 1 year ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
-
Target version:
-
Start date:
2007-01-17
Due date:
% Done:

0%

PHP Version:
Tags:
Complexity:
Sprint Focus:

Description

This function produces div-tags around html-output of certain extensions (newloginbox).
Generated comments can be disabled via TS config.disablePrefixComment = 1 but the div-tags will allway produced.
It would be nice if this feature (div-tag-generation around plugin-code) could be disabled vi TS. So that we have more control over the generated html and more flexibility.
The problem was already discussed at (17.01. / 11:04 Code-Ă„nderungen im CORE...)

Greeting und thank a lot Thomas

(issue imported from #M4801)

disable_base.diff View (889 Bytes) Administrator Admin, 2007-04-28 01:00


Related issues

Related to TYPO3 Core - Bug #19796: pi_wrapInBaseClass should not wrap the div if content is empty Closed 2009-01-12
Duplicates TYPO3 Core - Feature #19809: make pi_wrapInBaseClass wraps configurable Rejected 2009-01-13

History

#1 Updated by Oliver Hader almost 13 years ago

I agree to the statement, that such wraps should be set in typoscript and there should be default setting for it. The wrap you mentioned is mostly used for CSS reasons, to give it a CSS-namespace.

But, there could be an extension-dependent configuration like this one:

plugin.tx_myext_pi1 {
disableWrapInBaseClass = 1
}

If the php extension file itself (e.g. pi1/class.tx_myext_pi1.php) puts the $conf to $this->conf in the main-function, pi_wrapInBaseClass could get knowledge of this configuration.

#2 Updated by Tomas Mrozek over 12 years ago

+1

A developer needs to have control over every piece of HTML code outputed. No matter how "harmless" a div tag looks, there are situations when an extra div is a pain in the...

#3 Updated by Michael Scharkow over 12 years ago

Since we cannot do this per-extension, I uploaded a patch to disable this globally. Use config.disableBaseClassWrap = 1 in your TS setup

#4 Updated by Bastiaan over 12 years ago

Thank you! Finally some control back ;)

#5 Updated by Dmitry Dulepov over 12 years ago

I think it should be possible to do it for extension. The code in pi_wrapInBaseClass should check for the TSConfig options that is constructed like:

$TSConfigKey = 'plugin.' . $this->prefixId . 'disableWrapInBaseClass';

#6 Updated by Steffen Kamper over 12 years ago

yes, i think too, because some extensions come with default css defined with the wrapclass, otherwise this css will not work any longer.
So the easies way would be a setting for extension, that prevent the wrapping like
plugin.tx_ext_pi1.disableWrapInBaseClass = 1

and in pi_wrapInBaseClass

$content = $this->conf['disableWrapInBaseClass '] ? $str : '<div class....

#7 Updated by Christian Kuhn over 9 years ago

Resolved as duplicate of #19809

#8 Updated by Chris topher over 7 years ago

  • Assignee deleted (Michael Scharkow)
  • Target version deleted (0)
  • PHP Version deleted (4)

#9 Updated by Benni Mack about 1 year ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF