['Karten-Hotspots (SVG)', 'Interaktive Punkte auf externer SVG'], 'types' => ['content'], 'contentCategory' => 'media', 'standardFields' => ['cssID', 'headline'], 'beTemplate' => 'rsce_map_hotspots_backend', 'fields' => [ // --- Allgemein --- 'svgFile' => [ 'label' => ['SVG-Datei', 'Externe SVG mit viewBox, die als Karte dient'], 'inputType' => 'fileTree', 'eval' => ['files'=>true, 'filesOnly'=>true, 'fieldType'=>'radio', 'extensions'=>'svg', 'mandatory'=>true], ], // --- Darstellung (global) --- 'markerColor' => [ 'label' => ['Farbe – Punkt', 'Hex-Farbwert für alle Punkte (z. B. 3c63a8)'], 'inputType' => 'text', 'eval' => ['maxlength'=>6, 'colorpicker'=>true, 'isHexColor'=>true, 'decodeEntities'=>true, 'tl_class'=>'w25'], 'default' => '3c63a8', ], 'labelColor' => [ 'label' => ['Farbe – Label', 'Hex-Farbwert für alle Labels (z. B. 3c63a8)'], 'inputType' => 'text', 'eval' => ['maxlength'=>6, 'colorpicker'=>true, 'isHexColor'=>true, 'decodeEntities'=>true, 'tl_class'=>'w25'], 'default' => '3c63a8', ], 'numbering' => [ 'label' => ['Nummerierung anzeigen', 'Zeigt eine laufende Nummer vor jedem Label'], 'inputType' => 'checkbox', 'eval' => ['tl_class'=>'w50 m12'], ], 'hitSize' => [ 'label' => ['Klickbereich (px)', 'Durchmesser der Klickfläche in Bildschirm-Pixeln (Empfehlung: 32–44)'], 'inputType' => 'text', 'eval' => ['rgxp'=>'digit', 'maxlength'=>3, 'tl_class'=>'w50 m12', 'mandatory'=>true], 'default' => '32', ], 'showList' => [ 'label' => ['Linkliste unter der Karte anzeigen', 'Erzeugt eine nummerierte Liste der Ziele'], 'inputType' => 'checkbox', 'eval' => ['tl_class'=>'w50 m12'], ], // --- Punkte --- 'points' => [ 'label' => ['Punkte', 'Koordinaten sind in SVG-User-Units (passen zum viewBox der SVG). Nutze den Picker im Backend um die X, Y zu ermitteln.'], 'inputType' => 'list', 'minItems' => 0, 'fields' => [ 'x' => [ 'label' => ['X', 'X-Position im SVG-Koordinatensystem'], 'inputType' => 'text', 'eval' => ['rgxp'=>'numeric', 'tl_class'=>'w25'], ], 'y' => [ 'label' => ['Y', 'Y-Position im SVG-Koordinatensystem'], 'inputType' => 'text', 'eval' => ['rgxp'=>'numeric', 'tl_class'=>'w25'], ], 'label' => [ 'label' => ['Label am Punkt', 'z. B. Städtename'], 'inputType' => 'text', 'eval' => ['maxlength'=>255, 'tl_class'=>'w50'], ], 'url' => [ 'label' => ['URL', 'Ziel-Link (leer lassen für „ohne Link“)'], 'inputType' => 'text', 'eval' => ['maxlength'=>2048, 'rgxp'=>'url', 'tl_class'=>'clr w50', 'decodeEntities'=>true, 'dcaPicker'=>true], ], ], ], ], ];