Profilbild als Option für Mitglieder
Hallo liebe Community!
Ich habe folgendes Problem: Ich möchte gerne mein Mitglieder-Modul (tl_member) erweitern, in dem ich die Option Profilbild hinzufügen möchte.
Meine Palette und mein Field in der dcaconfig.php
PHP-Code:
$GLOBALS['TL_DCA']['tl_member']['palettes']['default'] = str_replace(
'gender;', 'gender;{images},picture;',
$GLOBALS['TL_DCA']['tl_member']['palettes']['default']
);
PHP-Code:
$GLOBALS['TL_DCA']['tl_member']['fields']['picture'] = array
(
'label' => &$GLOBALS['TL_LANG']['tl_member']['picture'],
'exclude' => true,
'inputType' => 'fileTree',
'eval' => array('mandatory'=>false, 'feEditable' => true, 'feViewable' => true, 'files'=>true, 'filesOnly'=>true, 'doNotOverwrite'=>true, 'fieldType'=>'radio', 'extensions'=>'jpg,jpeg', 'maxlength'=>409600),
'sql' => "varchar(255) NOT NULL default ''"
);
Wenn ich nun die Datenbank aktualisieren, das Feld in der Tabelle angelegt wurde und ich unter dem Mitglied ein Bild im Dateibaum auswähle - kommt nach dem speichern: Ein Fehler ist aufgetreten! (im Backend)
Leider ist diese Fehlermeldung nicht sehr detailliert (Logs bleiben ruhig). Wenn ich den Schritt versuche zu wiederholen, hat er das Bild (Dateipfad) auch gar nicht gespeichert. Datenbank bleibt leer. Kein Pfad.
Habe ich etwas übersehen oder stimmt da etwas nicht mit dem inputType 'fileTree'.
Binärcode statt Avatar-Bild - Bitte um Hilfe
Hallo zusammen,
ich möchte den Thread nochmal hochholen. Auch ich habe bei tl_member.php mehrere Felder via DCA hinzugefügt, weil die Erweiterung xtmembers für 4.4 ja nicht mehr zur Verfügung steht. Ein Feld "avatar" ist auch dabei, weil ich sämtliche Avatar-Erweiterungen über den CM entweder nicht installieren konnte (HeimrichHannot – Contao-Member-Bundle, Oveleon – Contao-Member-Extension-Bundle) oder kein Bild im Frontend angezeigt wird (Terminal42).
Alle DCA-Felder tauchen im Backend schön auf und sollen jetzt mit Christians cm_membermaps ausgegeben werden. Wie hier schon in vielen, vielen Threads besprochen, erscheinen im Frontend anstelle des Avatar-Bildes jedoch die Binär-Zeichen und ich kriege sie auch nicht weg, egal, welche Lösung aus dem Forum ich probiert habe. Hat jemand noch einen Tipp?
Die Mitgliedsdaten werden im Template so ausgegeben:
HTML-Code:
<tbody>
<?php foreach ($this->record as $col): ?>
<tr class="<?= $col['class']; ?>">
<td class="label"><?= $col['label']; ?></td>
<td class="value"><?= $col['content'];?></td>
</tr>
<?php endforeach; ?>
</tbody>
Mein DCA:
PHP-Code:
$GLOBALS['TL_DCA']['tl_member']['palettes']['default'] = str_replace
(
'language;',
'language,avatar;',
$GLOBALS['TL_DCA']['tl_member']['palettes']['default']
);
$GLOBALS['TL_DCA']['tl_member']['fields']['avatar'] = array
(
'label' => &$GLOBALS['TL_LANG']['tl_member']['avatar'],
'exclude' => true,
'inputType' => 'fileTree',
'eval' => array(
'feEditable' =>true,
'feViewable' =>true,
'files' =>true,
'filesOnly' =>true,
'fieldType' =>'checkbox',
'extensions' => 'jpg,png,jpeg',
'feGroup' =>'contact'),
'sql' => "binary(16) NULL"
);
Danke!
Marion