Hallo, bisher (vor Rel. 2.3.3.1) habe ich in der order_details-USERMOD.html den folgenden PHP-Code ausgeführt: Code: {php}require_once(DIR_FS_INC . 'xtc_get_products_stock.inc.php'); $tmp = $this->get_template_vars('module_data'); $pStock = xtc_get_products_stock( $tmp["PRODUCTS_ID_EXTENDED"]); $pValue =$tmp["PRODUCTS_QTY_VALUE"]; if ($pStock < $pValue) echo '<span class="markProductOutOfStock">'; echo 'Lagerbestand: '.$pStock{/php}{if $module_data.UNIT} {$module_data.UNIT}{/if} {php}if ($pStock < $pValue) echo '</span>';{/php} Leider funktioniert das ganze seit dem Update nicht mehr. Scheinbar ist bei "Smarty" jetzt die PHP-Funktion abgeschaltet. Hat jemand eien Ahnung, wie ich den Code weiterhin nutzen kann? Der Code prüft ob die Bestellmenge größer als die Lagermenge ist und gibt dann einen Hinweis mit der vorhanden, also maximal bestellbaren Menge aus. Über Hinweise, Tipps und Tricks würde ich mich sehr freuen.
Moin, du kannst einen Overload der Klasse OrderDetailsCartContentView erstellen und dort deine PHP-Logik verfrachten, Variablen zuweisen und die in deinem USERMOD entsprechend zur Anzeige bringen.
Gute Idee, leider kenne ich mich mit den Overloads noch nicht aus. Gibt es irgendwo eine gute Beschreibung? Soweit ich das durchblicke, müßte die Funktion "prepare_data" etwas erweitert werden (das Array "moduleContent", welches nachher mit module_data abgefragt wird, um die Lagermenge erweitern), aber ich weiß nicht wie ich den Overload gestalten muß. Bisher habe ich einen Ordner (user_classes\overloads\OrderDetailsCartContentView) angelegt und dort eine Datei (test_OrderDetailsCartContentView.inc.php) angelegt. Darin habe ich eine Klasse (class test_OrderDetailsCartContentView extends test_OrderDetailsCartContentView_parent{) und eine Funktion (public function prepare_data()) eingesetzt. Leider kann ich in dieser Funktion machen was ich will, die Änderungen kommen in der order_details-USERMOD.html nicht an. Also irgendetwas mache ich wohl falsch und darum suche ich eine "Idiotensichere" Anleitung. Viele Grüße Kai
Okay, die vorgehensweise ist korrekt, nur habe ich vergessen, dass ich jetzt ein Modul bearbeite und den Cache dafür löschen muss und nicht nur den Cache für die Seitenausgabe. Da ich nun den Wert habe, werde ich den Rest mit den Smarty auch noch hin bekommen. Viele Grüße Kai