Hallo,

es ist zwar nicht eine so ganz optimale Lösung, aber für Spezialfälle kann folgendes gehen:

Es gibt eine Extension, mit der man TS-Schnipsel als Contentelemente anlegen kann (typoscript_code). Dort kann man beliebig Bedingungen definieren und dann mittels RECORDS Element ein bestimmtes Element unter bestimmter Bedingung an der Stelle einfügen.

Am 13.06.2012 15:01, schrieb Kay Strobach:
Hi Laxander,

ich denke das geht.

Variante 1: Hook in TV finden und dort das rendering ändern.
Variante 2: postUserFunc des page objectes nutzen und mit einem
preg_replace das fce entfernen ;)

includeLibs.EXT = EXT:EXT/Classes/Hook/StdWrap.php

stdWrap.postUserFunc  = tx_EXT_Hook_StdWrap->processReplacement

<?php

class tx_EXT_Hook_StdWrap {
        /**
         * Processes ordered replacements on content data.
         *
         * @param       string          $content: The content to be processed
         * @param       array           $configuration: The TypoScript 
configuration for
stdWrap.replacement
         * @return      string          The processed content data
         */
        public function processReplacement($content) {
                $configuration = array(
                        '10.' =>  array(
                                'search' =>  '<div class="right"><input 
type="submit"',
                                'replace' =>  '</fieldset><div class="submit"><input 
type="submit"',
                        )
                );

                foreach ($configuration as $index =>  $action) {
                                // Checks whether we have an valid action and a 
numeric key ending
with a dot ("10."):
                        if (is_array($action)&&  substr($index, -1) === '.'&&
t3lib_div::testInt(substr($index, 0, -1))) {
                                $content = 
$this->processReplacementAction($content, $action);
                        }
                }
                return $content;
        }

        /**
         * Processes a single search/replace on content data.
         *
         * @author Markus Günther:
http://azubi-medienblog.de/2011/12/06/typo3-4-5-um-stdwrap-replacement-erweitern/
         *
         * @param       string          $content: The content to be processed
         * @param       array           $configuration: The TypoScript of the 
search/replace
action to be processed
         * @return      string          The processed content data
         */
        protected function processReplacementAction($content, array
$configuration) {
                if ((isset($configuration['search']) || 
isset($configuration['search.']))
                &&  (isset($configuration['replace']) ||
isset($configuration['replace.']))) {

                        // Gets the search needle:
                        $search = tslib_cObj::stdWrap($configuration['search'],
$configuration['search.']);
                        // Determines whether regular expression shall be used:
                        if (isset($configuration['useRegExp']) || 
$configuration['useRegExp.']) {
                                $useRegularExpression =
tslib_cObj::stdWrap($configuration['useRegExp'],
$configuration['useRegExp.']);
                        }
                        // Performs a replacement by preg_replace():
                        if ($useRegularExpression) {
                                $replace = 
tslib_cObj::stdWrap($configuration['replace'],
$configuration['replace.']);
                                $content = preg_replace($search, $replace, 
$content);
                                // Checks whether the search needle is part of 
the content:
                        } elseif (strpos($content, $search) !== false) {
                                $replace = 
tslib_cObj::stdWrap($configuration['replace'],
$configuration['replace.']);
                                $content = str_replace($search, $replace, 
$content);
                        }
                }
                return $content;
        }
}

Grüße
Kay

Am 13.06.2012 14:11, schrieb JCL - Johannes C. Laxander:
Hi Kay,

ok jetzt seh' ich klarer! Ich glaube da hab' ich mich bei meiner 
Problemschilderung ungenau ausgedrückt.
Es geht mir nicht darum, diese im Backend auszublenden, sondern im Frontend 
nicht anzuzeigen!

Es handelt sich um angelegte und anzeigbare Inhaltselemente, die unter 
bestimmten Bedingungen eben (doch) nicht im FE angezeigt werden sollen. Ich 
müsste die Ausgabe dieser CEs also per TypoScript unterbinden!

Dazu eine Idee?

Gruß, Johannes.

-----Ursprüngliche Nachricht-----
Von: typo3-german-boun...@lists.typo3.org
[mailto:typo3-german-boun...@lists.typo3.org] Im Auftrag von
Kay Strobach
Gesendet: Mittwoch, 13. Juni 2012 13:57
An: typo3-german@lists.typo3.org
Betreff: Re: [TYPO3-german] TemplaVoila - Inhaltselement
unter bestimmten Bedingungen nicht anzeigen

Hi Johannes,

TCEFORM.tt_content.tx_templavoila_ds {
      removeItems = uid list (comma)
}

TCEFORM.tt_content.tx_templavoila_to {
      removeItems = uid list (comma)
}

Das geht auch für die Tabelle "pages".
Der obige Code ist nicht getestet, klappt aber sonst bei
nahezu allen Feldern.

Grüße
Kay

Am 13.06.2012 13:50, schrieb JCL - Johannes C. Laxander:
Hallo Kay,

bei mir scheint heute wirklich einer auf der Leitung zu
stehen - ich
versteh' nämlich nicht was du meinst? Sorry - aber erstmal
danke dafür
;-)

Johannes

Kay Strobach
Gesendet: Mittwoch, 13. Juni 2012 13:41

Hi,

du könntest im Pagets die option für das jeweilige template
ausblenden.

Grüße
Kay


Am 13.06.2012 13:35, schrieb JCL - Johannes C. Laxander:
Hallo,

ich habe unter TemplaVoila in einer Seite mehrere
Inhaltselemente (Text / Text m Bild).

Unter bestimmten Bedingungen sollen einige dieser
Inhaltselemente nicht angezeigt werden. im müsste also das
entsprechende Object löschen. Nur habe ich im Moment n'Brett vorm
Kopf, weil mir nicht einfallen will, wie ich Zugriff auf ein
bestimmtes Inhaltselement bekomme.

Wer kann mir bitte weiterhelfen?

Gruß Johannes.

--
http://www.kay-strobach.de - Open Source Rocks

TYPO3 .... inspiring people to share!
Get involved: http://typo3.org

Answer was useful - feel free to donate:
   -
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_but
ton_id=KPM9NAV73VDF2
   - https://flattr.com/profile/kaystrobach



_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german




--
Viele Grüße
Martin Wunderlich

Developer

Netresearch GmbH&  Co. KG
-----------------------------------------------
Nonnenstraße 11d - 04229 Leipzig
T: +49 341 47842 18
-----------------------------------------------
http://www.netresearch.de - i...@netresearch.de

++++++++++++++
Netresearch - Passion for eCommerce


++++++++++++++
http://www.netresearch.de/blog
http://www.facebook.com/netresearch
http://twitter.com/netresearch

-----------------------------------------------
Registergericht: AG Leipzig HRA 15614
Komplementär: Netresearch Beteiligungs GmbH, AG Leipzig HRB 17018
Geschäftsführer: Michael Ablass, Thomas Fleck



_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an