Hinzufügen von Rechnungszeitraum und Kündigungsfristen zu Rechnungspositionen (item description) über Hook

  • Hallo zusammen,


    ich möchte gerne in den einzelnen Rechnungspositionen aufführen für welchen Zeitraum beim Hosting bezahlt wird. Siehe Beispiel unten. Dafür habe ich einen Hook geschrieben. In der Invoice.tpl-Datei konnte ich die Ausgabe schon anpassen das finde ich aber nicht optimal und ist auch nicht die richtige Stelle. Ich würde gerne die "line item description" auch in der Datenbank ändern. Doch leider wird der Hook InvoiceCreation wohl nicht mal ausgelöst, bzw. nicht mit meiner Funktion. Beim Aktivieren von Hook Debugging steht im Activity Log nur: "Hooks Debug: No Hook Functions Defined for InvoiceCreation". Ich habe auch noch einen Hook von Katamazes-Sammlung, welcher auch nicht ausgeführt wird. Langsam habe ich das Gefühl es gibt ein grundlegendes Problem da auch in der internationalen Community ähnliches bei WHMCS Version 8.1.x berichtet wird.


    Hat jemand von euch eine Idee wieso das nicht funktioniert, oder mache ich etwas falsch? Ich verwende WHMCS Version 8.1.3, PHP 7.4.18 Fehler im Log konnte ich keine sehen.

    Beispiel

    Normale Ausgabe für ein Hosting-Produkt auf der Rechnung ist
    Produktname - domain.com (14.05.2021 - 14.05.2022)


    Neue Ausgabe für ein Hosting-Produkt auf der Rechnung durch den hook
    Produktname - domain.com
    Zeitraum: 14.05.2021 - 14.05.2022
    Verrechnungszyklus: Jährlich
    Letztmöglicher Kündigungstermin: 14.04.2022

    Mein Hook

    erstellt in: "/includes/hooks/invoicehook.php"

    Einmal editiert, zuletzt von holzhannes () aus folgendem Grund: added ) at: 'itemdescription' => array($item['id'] => $new_item_description),

  • Irgendwie normal, man schaut nur ins Forum wenn man selbst Hilfe braucht,.... leider.


    Das Umschreiben der Rechnungsbeschreibung über die WHMCS API, und damit auch in der WHMCS DB halte ich für keinen empfehlenswerten Weg, da WHMCS an einigen Punkten davon ausgeht das die Laufzeit z.B. (14.05.2021 - 14.05.2022) an bestimmter Stelle steht und damit arbeitet, das kann bei WHMCS und Addons zu Problemen führen. Wer solche Änderungen in der DB direkt macht muss sich nachher nicht wundern wenn es mit WHMCS oder Modulen zu Problemen kommt.

    Sinnvoller wäre es direkt in der invoicepdf.tpl mit php zu arbeiten und die Darstellung nur dort zu ändern oder die Produktbeschreibung in einer eigenen Tabelle zu speichern und die invoicepdf.tpl dahingehend zu ändern das sie Ihre Informationen aus dieser Tabelle bezieht.