[TYPO3-german] Custom Image Palette

Dr. Dieter Porth typo3 at mobger.de
Wed Feb 1 19:07:51 CET 2017


Hallo Monti,

Ausblenden bei ausgewählten Content-Elementen

Vielleicht hilft dir für dein Feld das displayCond aus der TCA weiter.

------------

Ich habe dein Ziel so verstanden: Du möchtest Themes für deine Website 
haben - also vom Redakteur zuschaltbare und auch steuerbare Effekte für 
ausgewählte Content-Elementen.

Effekte definiert man Effekte im Frontend aber gemeinhin über CSS-Klassen.

In meiner Extension borderstyle kann ein Redakteur nur eigene Rahmen mit 
dazugehörigen eindeutigen Klassennamen definieren; aber eine Erweiterung 
auf andere CSS-Effekte sollte leicht möglich sein. Die Klassen zu den 
Rahmen kann er als Klarnamen (kein numerisches IRRE-Element) 
verschiedenen Content-Elementen zuweisen. Die Extension selbst definiert 
nur bei jedem Aufruf das CSS-File für die vergebenen Klassennamen. Das 
Interessante an der Extension ist, dass zum Beispiel die Zeitmechanismen 
von TYPO greifen sollten (habe es nie getestet). Man sollte mit TYPO3 
also ein tagezeitlich sich änderndes Layout erstellen können oder 
zeitlich begrenzte Kampagne-Layouts in die Website einbinden können. Ein 
Manko der Extension ist, dass sie derzeit keine 
multiplen-Klassenzuweisungen erlaubt, in dem zusätzlichen Textfeld 
erlaubt. (Bei Rahmen braucht man das nicht.)

Vielleicht kann dir die Extension Ideen für deine Zielumsetzung geben.
Ich denke du bis insofern auf dem Holzweg, dass du vermutlich die Regeln 
zur Datenbanknormalisierung nicht beachtest, da du die Tabellen mit 
redundanten Informationen überfrachtest. Dein Wunsch, dass die Checkbox 
ausblendbar sein soll, deutet darauf hin.

Die Extension werde ich nicht intensiv weiterentwickeln, da ich hoffe, 
dass die TCA von TYPO3 bald neben den IRRE auch Standards für 
fehlertolerante Signal->Listener-Datenbank-Relationen ermöglicht, wie 
zum Beispiel für Themes wichtig sind. Denn auch grundsätzlich zur 
eindeutigen Zusammenführung von Daten aus verschiedenen Tabellen in 
einem Datenfeld wären Signal->Listener-Datenbank-Relationen wichtig und 
hilfreich.

Mit besten Grüßen
        Dieter

Am 01.02.2017 um 09:18 schrieb Reinhardt Medien:
> Hallo "Gemeinde" ;),
>
> ich versuche seit Tagen vergeblich eine eigene Image-Palette anzulegen.
>
> Ausgangspunkt: Ich habe bereits die normale Imagepalette um ein Feld 
> (Checkbox) erweitert, um beispielsweise Animationseffekte für jedes 
> einzelne Bild aktivieren zu können. Ich nutze das hauseigene image 
> (als irre) für slider galerien und mehr.
>
> Daten: - TYPO3 V.7.6.14
> - Extensions: vhs, t3adminer und meine eigene rmbase
> - Tabelle: sys_file_reference
> - ext_tables.php und pageTSconfig.ts
>
> Ich würde gerne die Checkbox einfach nur bei manchen CEs ausblenden.
>
> Ziel: Für die image-palette (oder eine custom-image-palette, wenn es 
> nicht mit ausblenden pro CE geht) würde ich dann einige Felder anlegen 
> wolllen, die ich wahlweise aus und einblenden kann, je nach Benötigung.
>
> Hier der Code aus der ext_tables.php
> Bemerkung $rm_ll da steht der Pfad zu meiner language_db.xlf drin.
>
> [code]
> // Image-Checkbox definieren
> $imageCheckbox = array(
>   'rm_element_aktiv' => array(
>      'exclude' => 0,
>      'l10n_mode' => 'mergeIfNotBlank',
>      'label' => 
> 'LLL:EXT:rmbase/Resources/Private/Language/locallang_db.xlf:rm.image.aktiv',
>      'config' => array(
>          'default' => '0',
>          'eval' => '0',
>         'type' => 'check',
>          'items' => [
>            [$rm_ll.':rm.element.aktiv',1]
>          ]
>      )
>   )
> );
> // sys_file_reference durch Checkbox erweitern und für alle 
> Image-Paletten registrieren
> TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('sys_file_reference',$imageCheckbox,1); 
>
> TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToPalette('sys_file_reference','imageoverlayPalette','rm_element_aktiv'); 
>
> [/code]
>
> Ich habe in der pageTSconfig.ts bereits probiert die Zuweisung 
> vorzunehmen, aber ohne Erfolg.
> Das einzige was "geklappt" hat war, dass ich sie global aus und 
> anstellen kann.
> durch:
> [code]
> ## 
> ----------------------------------------------------------------------------------------------------------------
> ## Felder global ausblenden
> ## 
> ----------------------------------------------------------------------------------------------------------------
> TCEFORM.sys_file_reference {
>     rm_element_aktiv.disabled = 1
> }
> [/code]
>
> Ich würde mich freuen über Tipps und Lösungsansätze.
>
> Vielen Dank
> Monti
>
> Ps: Bitte auch schreiben, wenn ich total auf dem Holzweg bin.



More information about the TYPO3-german mailing list