PDF-Rechnung - Leerzeichen vor customfields entfernen

  • Hallo,


    ich habe in meinem Shop Artikel, welche per Texteingabe konfiguriert werden. Es gibt drei Textfelder, in die der Kunde jeweils eine Eingabe tätigen muss - diese Eingabe wird dann im Warenkorb, der Bestätigungs-Email und auf der Rechnung gezeigt. Bei der Rechnung habe ich jedoch ein Phänomen, dem ich nicht Herr werde: die erste der drei Texteingaben erscheint eingerückt, wie wenn ein Leerzeichen davor wäre. So sieht das Ganze dann aus:



    hier ist der Code für die Darstellung der Artikel (invoice_items.php):


    PHP
    1. <tr style="vertical-align: top;">
    2. <td style="text-align: left;" colspan="2">
    3. <div float="right" ><strong><?php echo $product_name; ?></strong></div>
    4. <?php
    5. $product_attribute = VirtueMartModelCustomfields::CustomsFieldOrderDisplay($item,'FE');
    6. echo $product_attribute;
    7. ?>
    8. </td>


    Dieses Leerzeichen hätte ich gerne entfernt, so dass alles schön linksbündig ist. Kann mir bitte jemand weiterhelfen?


    Grüße!



    Joomla: 3.8.8
    Virtuemart: 3.2.14

  • Servus,


    das kommt aus dem Sublayout customfield.php.
    In VM 3.2.15.xx ist es in Zeile 744:
    $otag = ' <span class="product-field-type-' . $productCustom->field_type . '">';


    Da steckt das Leerzeichen vor dem <span ...
    Wenn man es entfernt, passt es. Am besten einen Override im Template anlegen. Wenn es keine Nebenwirkungen gibt, kann ich es für den Core vorschlagen.


    Die Erklärung ist einfach, im ersten Custom Field ist es in ein allumschließendes DIV eingeschlossen, das Leerzeichen ist nicht der Zeilenanfang und wird angezeigt.
    In den folgenden Feldern folgt das Leerzeichen einem <br>, damit ist es Zeilenanfang und wird nicht angezeigt, weil bereits das "Leerzeichen" Zeilenumbruch angezeigt wird. Mehrere Leerzeichen hintereinander werden zu einem einzigen reduziert.


    Grüße
    Stefan


    PS: Möglicherweise wäre ein &nbsp; am Anfang besser, damit die Einrückung für alle angezeigt wird, müsste man testen.
    $otag = '&nbsp;<span class="product-field-type-' . $productCustom->field_type . '">';


    PPS: Einfach rausnehmen sieht besser aus.