Backend Moduleinbindung!

Hallo OXID Community!
Ich komme leider mit meinem ersten Testmodul nicht weiter, vielleicht übersehe ich nur eine Kleinigkeit. Ich möchte erstmal zum Testen im Punkt “Bestellungen” im Backend ein “Hallo Oxid” ausgegeben bekommen und zwar unter den Punkt PDF Rechnung.
Ich bin wie folgt vorgegangen:

Ordner module/hallowelt/hallo.php

<?php class hallowelt extends hallowelt_parent {
   public function hallo() {
   echo ('hallo oxid'); }
 } ?>

Dieses habe ich dann unter Module im Backend mit oxorder => invoicepdf/myorder&hallowelt/hallo eingebunden.

Wenn ich jetzt in der Datei order_overview.tpl versuche [{$oxorder->hallo()}] aufzurufen bekomme ich bei der Anzeige einen Fehler.

[B]Fatal error: Class ‘hallowelt_parent’ not found[/B]

und wenn ich anstelle hallowelt_parent dann extends oxBase schreibe kommt dieser Fehler.
[B]Warning: fopen(EXCEPTION_LOG.txt) [function.fopen]: failed to open stream: Permission denied[/B]

Ich bin mir nicht sicher was ich falsch mache. Gibt es ein Tutorial, wie man Module im Backend einbindet. Im Frontend scheint es einfacher zu sein.
Vielleicht ist auch mein Aufruf der Funktion falsch. Danke!!

Wenn die Klasse hallowelt heisst, dann die Datei hallowelt.php

Ah, danke! Das hilft mir schonmal weiter, nur kommt jetzt folgende Meldung!
[B]Fatal error: Smarty error: [in order_overview.tpl line 363]: syntax error: unrecognized tag: $oxorder-> hallo() (Smarty_Compiler.class.php, line 446)[/B]

[{debug}] ins Template, dann öffnet sich ein Popup und zeigt alle zur Verfügung stehenden Variablen an. Ich denke, $oxorder gibt es nicht.

Danke für den [B]debug[/B] Tipp, aber ich komme nicht weiter die Funktion hallo() aufzurufen. Scheint doch etwas schwieriger im Backend zu sein. Habe es auch schon mit [B] [{hallowelt::hallo()}][/B] probiert, jedoch kommt immer die gleiche Fehlermeldung.

[QUOTE=captndan;17370]
[B]Fatal error: Smarty error: [in order_overview.tpl line 363]: syntax error: unrecognized tag: $oxorder-> hallo() (Smarty_Compiler.class.php, line 446)[/B][/QUOTE]

Wird denn im Debug-Fenster eine Variable namens oxorder angezeigt?

bzw. bei [{$oxorder|@print_r:1}] das Order-Object.

Nein, oxorder ist tatsächlich nicht da. Das sind alle Variablen die aufgelistet werden:

{$SCRIPT_NAME} {$actlang} {$actshop} {$actshopobj} {$additionalparams} {$adminlang} {$afolder} {$alangs} {$bottom_buttons} {$charset} {$color} {$currency} {$edition} {$editlanguage} {$field} {$fulledition} {$giftCard} {$iMaxUploadFileSize} {$isdemoversion} {$isdtaus} {$isstaffelpreis} {$lang} {$languages} {$listitem} {$malladmin} {$oView} {$oViewConf} {$orderArticles} {$ordercnt} {$ordersum} {$ordertotalcnt} {$ordertotalsum} {$oxid} {$paymentType} {$readonly} {$revision} {$sHelpURL} {$sMaxFormattedFileSize} {$sfolder} {$shop} {$shopid} {$slang} {$sumtype} {$updatelist} {$version}

Hallo,

ich fürchte, hier wird keine bestehende Klasse überschrieben, oder?

Gruß

Eigentlich schon (glaube icĥ), aber die steht in der View/Smarty nicht unter $oxorder zur Verfügung.

http://docu.oxid-esales.com/CE/sourcecodedocumentation/4.2.0.23610/order__overview_8php-source.html
Zeile 00032
$edit sollte das oxOrder-Object sein. Komisch, dass das im debug Fenster nicht angezeigt wird…
Hast Du auch eine Bestellung selektiert?

So sollte etwas kommen…


[{if $edit}]
  [{$edit|@print_r:1}]
[{/if}]

Danke für die Hilfe, ich habe es hinbekommen.
Ich musste das Modul mit order_overview => hallowelt/hallowelt einbinden und konnte es mit [{ $oView->hallo() }] aufrufen.