View Issue Details

IDProjectCategoryView StatusLast Update
0000143BwPostmanNewsletters Backendpublic2023-04-21 14:19
ReporterBumes Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
PlatformIntelOSLinux 
Product Version4.1 
Fixed in Version4.1 
Summary0000143: Newsletter - Versendete bearbeiten
DescriptionWird diese Seite angewählt und ein bereits versendeter Newletter angeklickt, gibt es ein Problem mit den "Hidden" Einträgen in der Form in der Funktion "htmlspecialchars". Wenn die Zeile 82 in edit_publish.php auskommentiert wird, dann läuft es ohne Probleme bzw. es kommt kein Fehler.

Weiterhin werden bei den Datumsfeldern Warnungen angezeigt, dass strftime nicht mehr verwendet werden sollte.
TagsNo tags attached.

Activities

Bumes

2023-04-20 09:47

reporter  

Romana

2023-04-20 12:14

administrator   ~0000076

Hallo,

herzlichen Dank für diese Meldung.

Natürlich kann ich den ersten Fehler nicht nachvollziehen, wie könnte es auch sein:-(

Bei mir kommen für die Felder from_name, from_email, reply_email, subject, attachment und title, die in diesem Fieldset verwendet werden, überall Strings an, die auch sauber weiter verarbeitet werden können…

Daher mal ein paar Fragen:
Welche php-Version?
Ist das eine Neuinstallation von BwPostman unter J4 oder eine Migration von J3?
Ist das bei allen Newslettern so oder nur bei bestimmten, zum Beispiel Newsletter ohne Anhang?

Das zweite Problem ist bekannt, kann ich selbst aber nur abstellen, wenn ich darauf verzichten würde, das Kalenderfeld von Joomla zu verwenden und etwas eigenes programmieren würde. Sonst muss man darauf warten, dass Joomla das behebt.

Erst mal ratlos
Romana

Bumes

2023-04-21 12:23

reporter   ~0000078

Ich habe mir das noch einmal genauer angesehen. Zunächst aber die Antworten auf die Fragen:
1) PHP Version 8.2.5
2) Das ist eine komplett neu installiertes Joomla 4.2.9 mit neu installiertem BwPostman. Es läuft hier lokal in einer VM unter einem ebenfalls frisch aufgestem Debian 11
3) --> Nur bei Newsletter mit Anhang!!!

Der Grund scheint darin zu liegen, dass die Anhänge als Array gespeichert sind - und nicht als String.
<input type="text" name="jform[attachment]" id="jform_attachment"
value="Warning: Array to string conversion in /var/www/html/neu/layouts/joomla/form/field/hidden.php on line 61/>
Array">

Ich habe im Joomla Quelltext kurzerhand mal das "hidden" durch "text" ersetzt. Dann erscheint der Text auf dem Bildschirm.

Romana

2023-04-21 12:43

administrator   ~0000079

Hallo nochmal,

das Problem ist gefunden: Es tritt auf, wenn mehr als ein Anhang beim Newsletter angefügt ist. Der Fehler ist in der nächsten Version behoben.

Noch mal Danke für die Meldung und liebe Grüße
Romana

Bumes

2023-04-21 13:12

reporter   ~0000080

Hallo und vielen Dank und Respekt von den schnellen Antworten!!!

Bei mir trat das Problem bereits mit einem einzigen Anhang auf. Nur zur Ergänzung.

Schöne Grüße

Romana

2023-04-21 14:19

administrator   ~0000081

Klasse, jemand mit Ahnung.

Aber ich muss etwas korrigieren: Die Anhänge werden nicht als Array gespeichert, in der Tabelle liegen sie als JSON. Aber sie werden als Array aufbereitet, weil Joomla bei multiplen Subforms das so braucht.

Ob es nun auch mit einem einzelnen Anhang so auftritt, habe ich nicht mehr weiter untersucht, mein Tester Karl meldete es mir so zurück und hat mir dadurch etwas Arbeit abgenommen. Er hat auch den Patch dafür gemacht. Im Manifest für das Formular newsletter.xml wird aus der Definition für attachments folgendes:

        <field name="attachment"
               type="subform"
               label="COM_BWPOSTMAN_ATTACHMENT_FIELD_LABEL"
               labelclass="control-label"
               description="COM_BWPOSTMAN_ATTACHMENT_FIELD_DESC"
               multiple="true"
               min="0"
               max="20"
               formsource="administrator/components/com_bwpostman/forms/attachments.xml"
               repeatable=" true"
               layout="joomla.form.field.subform.repeatable-table"
                     class="hidden"
        >
        </field>

Er hat dann noch zur Sicherheit in besagter edit_publish.php den ganzen Block mit denn versteckten Feldern mit

<div class="hidden" style="display:none">

umgeben. Mit ersterem wird der Fehler mit den htmlspecialchars behoben, mit zweiterem sicher gestellt, dass die versteckten Felder auch wirklich nicht angezeigt werden.

Hth
Romana

Issue History

Date Modified Username Field Change
2023-04-20 09:47 Bumes New Issue
2023-04-20 09:47 Bumes File Added: Screenshot 2023-04-20 at 09-37-10 Fehler 0.png
2023-04-20 12:14 Romana Note Added: 0000076
2023-04-21 12:23 Bumes Note Added: 0000078
2023-04-21 12:43 Romana Note Added: 0000079
2023-04-21 13:12 Bumes Note Added: 0000080
2023-04-21 14:05 Romana Status new => resolved
2023-04-21 14:05 Romana Resolution open => fixed
2023-04-21 14:05 Romana Fixed in Version => 4.1
2023-04-21 14:19 Romana Note Added: 0000081